-
Notifications
You must be signed in to change notification settings - Fork 22.4k
/
index.md
43 lines (32 loc) · 1007 Bytes
/
index.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
---
title: ElementInternals.states
slug: Web/API/ElementInternals/states
page-type: web-api-instance-property
tags:
- API
- Property
- Reference
- states
- ElementInternals
browser-compat: api.ElementInternals.states
---
{{DefaultAPISidebar("DOM")}}
The **`states`** read-only property of the {{domxref("ElementInternals")}} interface returns a {{domxref("CustomStateSet")}} representing the possible states of the custom element.
## Value
A {{domxref("CustomStateSet")}} which is a {{jsxref("Set")}} of strings.
## Examples
The following function adds and removes the state `--checked` to a `CustomStateSet`, then prints to the console `true` or `false` as the custom checkbox is checked or unchecked.
```js
set checked(flag) {
if (flag) {
this._internals.states.add('--checked');
} else {
this._internals.states.delete('--checked');
}
console.log(this._internals.states.has('--checked'));
}
```
## Specifications
{{Specifications}}
## Browser compatibility
{{Compat}}