Как повесить событие клика на элементы с одинаковыми классами?

319
22 февраля 2018, 16:13

Допустим есть несколько блоков с одинаковыми классами

<div class="block">Название</div>
<div class="block">Название</div>
<div class="block">Название</div>
<div class="block">Название</div>

И код который выполняет по событию клика какой то действие.

$('.block').click(function() {
$('.block').css('color','red')})

Как сделать так, что бы при клике функция выполнялась только для кликнутого элемента а не для всех элементов с таким же классом?

Answer 1

В обработке события используйте $(this)

$('.block').click(function() { 
  $(this).css('color', 'red'); 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
<div class="block">Название</div> 
<div class="block">Название</div> 
<div class="block">Название</div> 
<div class="block">Название</div>

Answer 2

Просто

$('.block').click(function() {
$(this).css('color','red');
});
READ ALSO
Вложенность меню

Вложенность меню

здравствуйте, у меня такой вопрос, у меня есть меню, в нем ul, в каждой ul есть liКаждый последующий элемент зависит по высоте от дочки

297
Firebase Вывести списком JS

Firebase Вывести списком JS

Нужно вывести все дочерние элементы списком "< ul>< /ul>"

334
Angular, TypeScript, tslint &hellip; одинарные кавычки вместо двойных?

Angular, TypeScript, tslint … одинарные кавычки вместо двойных?

Использую VS Code, стоит расширение tslintВесьма требовательное, но в целом - всё подсказывает верно

323
html тэг вместо стандартного маркера google maps API

html тэг вместо стандартного маркера google maps API

У гугл карт ест такая настройка: изменять стандартный маркер на свою картинку

250