DOMTokenList
Базовая Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Интерфейс DOMTokenList представляет собой набор разделительных токенов. Такой набор возвращается Element.classList или HTMLLinkElement.relList, и многие другие.
Индексирование DOMTokenList начинается с 0, как и в JavaScript Array объектов. DOMTokenList всегда чувствительна к регистру.
Свойства экземпляра
-
DOMTokenList.lengthТолько для чтения -
Число объектов, хранящихся в объекте.
DOMTokenList.value-
Свойство строкового преобразования, возвращающее значение списка в виде строки.
Методы экземпляра
DOMTokenList.item()-
Возвращает элемент в списке по его индексу, или
nullесли индекс больше или равенlengthсписка. DOMTokenList.contains()-
Возвращает
trueесли список содержит данный токен, в противном случаеfalse. DOMTokenList.add()-
Добавляет указанные токены в список.
DOMTokenList.remove()-
Удаляет указанные токены из списка.
DOMTokenList.replace()-
Заменяет токен другим.
DOMTokenList.supports()-
Возвращает
trueесли данный токен находится в поддерживаемых токенах ассоциированного атрибута. DOMTokenList.toggle()-
Удаляет токен из списка, если он существует, или добавляет его в список, если его нет. Возвращает булево значение, указывающее, находится ли токен в списке после операции.
DOMTokenList.entries()-
Возвращает итератор, позволяющий проходить по всем парам ключ/значение, содержащимся в этом объекте.
DOMTokenList.forEach()-
Выполняет предоставленную функцию обратного вызова один раз для каждого
DOMTokenListэлемента. DOMTokenList.keys()-
Возвращает итератор, позволяющий проходить по всем ключам пар ключ/значение, содержащихся в этом объекте.
DOMTokenList.toString()-
Возвращает
DOMTokenList.value, значения списка, разделенные пробелами, в виде строки. DOMTokenList.values()-
Возвращает итератор, позволяющий проходить по всем значениям пар ключ/значение, содержащихся в этом объекте.
Примеры
В следующем простом примере мы получаем список классов, установленных на элементе <p>, как DOMTokenList с помощью Element.classList, добавляем класс с помощью DOMTokenList.add(), а затем обновляем Node.textContent элемента <p> на значение DOMTokenList.
Сначала HTML:
<p class="a b c"></p>
Теперь JavaScript:
let para = document.querySelector("p");
let classes = para.classList;
para.classList.add("d");
para.textContent = `paragraph classList is "${classes}"`;
Вывод выглядит следующим образом:
Удаление пробелов и дубликатов
Методы, изменяющие DOMTokenList (например, DOMTokenList.add()) автоматически обрезают избыточные пробелы и удаляют дубликаты из списка. Например:
<span class=" d d e f"></span>
let span = document.querySelector("span");
let classes = span.classList;
span.classList.add("x");
span.textContent = `span classList is "${classes}"`;
Вывод выглядит следующим образом:
Спецификации
| Спецификация |
|---|
| DOM # interface-domtokenlist |
Совместимость браузеров
| Настольные | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
@@iterator |
42 | 16 | 36 | 29 | 10.1 | 42 | 36 | 29 | 10.3 | 4.0 | 42 |
DOMTokenList |
8 | 12 | 3.6 | 11.5 | 5.1 | 18 | 4 | 11.5 | 5 | 1.0 | 3 |
add |
8 | 12 | 3.6 | ≤12.1 | 5.1 | 18 | 4 | ≤12.1 | 5 | 1.0 | 3 |
contains |
8 | 12 | 3.6 | ≤12.1 | 5.1 | 18 | 4 | ≤12.1 | 5 | 1.0 | 3 |
entries |
42 | 16 | 50 | 29 | 10.1 | 42 | 50 | 29 | 10.3 | 4.0 | 42 |
forEach |
42 | 16 | 50 | 29 | 10.1 | 42 | 50 | 29 | 10.3 | 4.0 | 42 |
item |
8 | 12 | 3.6 | ≤12.1 | 5.1 | 18 | 4 | ≤12.1 | 5 | 1.0 | 3 |
keys |
42 | 16 | 50 | 29 | 10.1 | 42 | 50 | 29 | 10.3 | 4.0 | 42 |
length |
8 | 12 | 3.6 | ≤12.1 | 5.1 | 18 | 4 | ≤12.1 | 5 | 1.0 | 3 |
remove |
8 | 12 | 3.6 | ≤12.1 | 5.1 | 18 | 4 | ≤12.1 | 5 | 1.0 | 3 |
remove_duplicates |
60 | 17 | 55 | 47 | 10 | 60 | 55 | 44 | 10 | 8.0 | 60 |
replace |
61 | 17 | 49 | 48 | 10.1 | 61 | 49 | 45 | 10.3 | 8.0 | 61 |
supports |
49 | 17 | 49 | 36 | 10.1 | 49 | 49 | 36 | 10.3 | 5.0 | 49 |
toString |
8 | 12 | 3.6 | ≤12.1 | 5.1 | 18 | 4 | ≤12.1 | 5 | 1.0 | 4.4 |
toggle |
8 | 12 | 3.6 | ≤12.1 | 5.1 | 18 | 4 | ≤12.1 | 5 | 1.0 | 3 |
trim_whitespace |
48 | 12 | 51 | 35 | 10 | 48 | 51 | 35 | 10 | 5.0 | 48 |
value |
50До Chrome 50, это свойство было частью устаревшего дочернего интерфейсаDOMSettableTokenList. |
17 | 47 | 37До Opera 37, это свойство было частью устаревшего дочернего интерфейсаDOMSettableTokenList. |
10 | 50До Chrome Android 50, это свойство было частью устаревшего дочернего интерфейсаDOMSettableTokenList. |
47 | 37До Opera Android 37, это свойство было частью устаревшего дочернего интерфейсаDOMSettableTokenList. |
10 | 5.0До Samsung Internet 5.0, это свойство было частью устаревшего дочернего интерфейсаDOMSettableTokenList. |
50До WebView Android 50, это свойство было частью устаревшего дочернего интерфейсаDOMSettableTokenList. |
values |
42 | 16 | 50 | 29 | 10.1 | 42 | 50 | 29 | 10.3 | 4.0 | 42 |
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/DOMTokenList