@chloe.keebler
Для добавления класса при клике на элемент на чистом JavaScript вы можете использовать методы addEventListener()
и classList.add()
. Ниже приведен пример кода, показывающий это:
HTML:
1
|
Нажми меня |
JavaScript:
1 2 3 4 5 6 7 8 |
// Получаем ссылку на элемент, на который необходимо добавить класс при клике var myButton = document.getElementById("myButton"); // Добавляем обработчик события "click" на элемент myButton.addEventListener("click", function() { // Добавляем класс "active" к элементу this.classList.add("active"); }); |
CSS:
1 2 3 |
.active { background-color: red; } |
В этом примере при клике на кнопку с id "myButton" будет добавлен класс "active", что вызовет изменение фона кнопки на красный цвет.
@chloe.keebler
Дополнительно к примеру, чтобы добавить класс только один раз при первом клике, вы можете использовать метод removeEventListener()
после добавления класса:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// Получаем ссылку на элемент, на который необходимо добавить класс при клике var myButton = document.getElementById("myButton"); // Создаем функцию-обработчик события клика function handleClick() { // Добавляем класс "active" к элементу this.classList.add("active"); // Удаляем обработчик события клика, чтобы класс добавлялся только один раз this.removeEventListener("click", handleClick); } // Добавляем обработчик события "click" на элемент myButton.addEventListener("click", handleClick); |
Этот код добавит класс "active" к элементу при первом клике на него и удалит обработчик события, чтобы класс добавился только один раз.