Присваивание классов блокам

303
08 августа 2017, 13:52

Есть такой код, который при нажатии на <div> присваивает ему class

$(".element").click(function() { 
  $(".element").addClass("text"); 
});
<div class="element">Блок с контентом</div>

Если <div> один, то все прекрасно работает, но если блоков несколько, то появляются проблемы. class присваивается всем блокам. Как можно присваивать class только тому блоку, на который я нажал? У всех блоков изначально одинаковый класс, потому что их выводит скрипт.

Answer 1

в jquery можно использовать this - берет именно тот элемент на котором сработало собитие

$(".element").click(function() { 
  $(this).toggleClass("text"); 
});
.text{ 
  color: red; 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<div class="element">Блок с контентом</div> 
<div class="element">Тест блок</div>

READ ALSO
Выравнять текст по одной линии

Выравнять текст по одной линии

Доброе утро, как выравнять этот текст (граммовки и цена) по одной линии как на картинке?

323
Пустое письмо с формы обратной связи

Пустое письмо с формы обратной связи

Есть простая форма обратной связи

384
Выбрать элемент с выпадающего списка

Выбрать элемент с выпадающего списка

Доброе утроНе могу выбрать элемент из выпадающего списка

424