Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 17.01.2021, 08:27
Аспирант
Отправить личное сообщение для maxim1978 Посмотреть профиль Найти все сообщения от maxim1978
 
Регистрация: 07.05.2019
Сообщений: 38

Как можно получить второй class ?
Имеем div с двумя class. Выглядит это так

Код:
<div class="item red"></div>
<div class="item green"></div>
<div class="item blue"></div>
<div class="item yellow"></div>
Потребовалось получить при клике второй class я это делал так

Код:
document.querySelectorAll(".item").forEach(function (el) {
  el.addEventListener("click", function (event) {
    document.body.style.event.target.className.slice(4);
  });
});
Этот код обозвали гов.... и хардкором

Как можно получить второй class но другим способом ?

Тут моя попытка : https://codepen.io/topicstarter/pen/vYXvPMg

Последний раз редактировалось maxim1978, 17.01.2021 в 08:44.
Ответить с цитированием
  #2 (permalink)  
Старый 17.01.2021, 08:51
Аспирант
Отправить личное сообщение для maxim1978 Посмотреть профиль Найти все сообщения от maxim1978
 
Регистрация: 07.05.2019
Сообщений: 38

решено

document.querySelectorAll(".item").forEach((el) => {
  el.addEventListener("click", (event) => {
    document.body.style.backgroundColor = getComputedStyle(
      event.target
    ).backgroundColor;
  });
});
Ответить с цитированием
  #3 (permalink)  
Старый 17.01.2021, 09:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

maxim1978,
а так сможешь вместо forEach
document.body.addEventListener("click", function(event)  {
Ответить с цитированием
  #4 (permalink)  
Старый 17.01.2021, 09:04
Аспирант
Отправить личное сообщение для maxim1978 Посмотреть профиль Найти все сообщения от maxim1978
 
Регистрация: 07.05.2019
Сообщений: 38

Сообщение от рони Посмотреть сообщение
maxim1978,
а так сможешь вместо forEach
document.body.addEventListener("click", function(event)  {
как это ?
Ответить с цитированием
  #5 (permalink)  
Старый 17.01.2021, 09:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

maxim1978,
Делегирование событий
Ответить с цитированием
  #6 (permalink)  
Старый 17.01.2021, 09:09
Аспирант
Отправить личное сообщение для maxim1978 Посмотреть профиль Найти все сообщения от maxim1978
 
Регистрация: 07.05.2019
Сообщений: 38

Сообщение от рони Посмотреть сообщение
maxim1978,
Делегирование событий
у меня разве не это ?
Ответить с цитированием
  #7 (permalink)  
Старый 17.01.2021, 09:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

maxim1978,
у вас на каждом item клик, а можно сделать обработчик клика только на body.
Ответить с цитированием
  #8 (permalink)  
Старый 17.01.2021, 09:12
Аспирант
Отправить личное сообщение для maxim1978 Посмотреть профиль Найти все сообщения от maxim1978
 
Регистрация: 07.05.2019
Сообщений: 38

Сообщение от рони Посмотреть сообщение
maxim1978,
у вас на каждом item клик, а можно сделать обработчик клика только на body.
я не понял как - покажите ?
Ответить с цитированием
  #9 (permalink)  
Старый 17.01.2021, 09:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

maxim1978,
в доке всё написано, и у вас практически готовый код , только добавить 1 строку из примеров по ссылке. ... ну или ждите, может кто быстрее?
Ответить с цитированием
  #10 (permalink)  
Старый 17.01.2021, 09:25
Аспирант
Отправить личное сообщение для maxim1978 Посмотреть профиль Найти все сообщения от maxim1978
 
Регистрация: 07.05.2019
Сообщений: 38

Сообщение от рони Посмотреть сообщение
maxim1978,
в доке всё написано, и у вас практически готовый код , только добавить 1 строку из примеров по ссылке. ... ну или ждите, может кто быстрее?
я пол ночи просидел с этой штукой - ладно забейте
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как получить результат от ajax запроса (из отдельного файла) 1Feniks1 AJAX и COMET 0 12.03.2017 18:45
Как правильно получить и присвоить данные полученные из сервера Axios, react-redux hambat Общие вопросы Javascript 5 07.03.2017 17:09
Как можно получить результат работы php скрипта после отправки данных через ajax nina_ jQuery 5 14.11.2016 14:17
Как получить содержимое тега script vanpitkinobi@yandex.ru Events/DOM/Window 2 14.04.2016 14:10
Как получить второй дочерний элемент, или второй смежный libinstyle Events/DOM/Window 4 30.06.2010 20:41