Как добавить класс при клике на чистом javascript?

Пользователь

от chloe.keebler , в категории: JavaScript , год назад

Как добавить класс при клике на чистом javascript?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от felix , год назад

@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", что вызовет изменение фона кнопки на красный цвет.

Пользователь

от deion , 8 месяцев назад

@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" к элементу при первом клике на него и удалит обработчик события, чтобы класс добавился только один раз.