Spec-Zone.ru › Web APIs

DOMTokenList: метод toggle()

Базовая Широко поддерживается

Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Метод toggle() интерфейса DOMTokenList удаляет существующий токен из списка и возвращает false. Если токен не существует, он добавляется, а функция возвращает true.

Синтаксис

toggle(token)
toggle(token, force)

Параметры

token

Строка, представляющая токен, который нужно переключить.

force Необязательно

Если указано, переключение выполняется в одностороннем порядке. Если установлено в значение false, то token только будет удален, но не добавлен. Если установлено в значение true, то token только будет добавлен, но не удален.

Возвращаемое значение

Булево значение, true или false, указывающее, содержится ли token в списке после вызова или нет.

Примеры

Переключение класса при нажатии

В следующем примере мы получаем список классов, установленных на элементе <span> как DOMTokenList с помощью Element.classList. Затем мы заменяем токен в списке и записываем список в Node.textContent элемента <span>.

Сначала HTML:

<span class="a b">classList is 'a b'</span>

Теперь JavaScript:

const span = document.querySelector("span");
const classes = span.classList;

span.addEventListener("click", () => {
  const result = classes.toggle("c");
  span.textContent = `'c' ${
    result ? "added" : "removed"
  }; classList is now "${classes}".`;
});

Вывод будет выглядеть так и будет изменяться каждый раз, когда вы нажимаете на текст:

Установление параметра force

Второй параметр может использоваться для определения включения или выключения класса. В этом примере класс 'c' будет включен только если ширина окна браузера превышает 1000 пикселей:

span.classList.toggle("c", window.innerWidth > 1000);

Спецификации

Спецификация
DOM
# ref-for-dom-domtokenlist-toggle①

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
toggle 8 12 3.6 ≤12.1 5.1 18 4 ≤12.1 5 1.0 3
force_parameter 24 12 24 15 7 25 24 14 7 1.5 4.4

© 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/toggle

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API