ElementInternals: states プロパティ
Baseline 2024Newly available
Since May 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.
states
は ElementInternals
インターフェイスの読み取り専用プロパティで、カスタム要素の取りうる状態を表す CustomStateSet
を返します。
値
CustomStateSet
です。これは文字列の Set
です。
例
以下の関数は CustomStateSet
に --checked
という状態を追加・除去し、カスタムチェックボックスがチェックされたりチェックが外れたりすると true
または false
をコンソールに出力します。
js
set checked(flag) {
if (flag) {
this._internals.states.add('--checked');
} else {
this._internals.states.delete('--checked');
}
console.log(this._internals.states.has('--checked'));
}
仕様書
Specification |
---|
HTML # custom-state-pseudo-class |
ブラウザーの互換性
Report problems with this compatibility data on GitHubdesktop | mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
states |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.