@generate
Попрошайка

Как сделать фон кликабельным js?

Полный код
https://codepen.io/vsjerkil/pen/MWyqEKd

<div id="bg">
<div>
d=document.querySelector("#bg");
d.onclick = function() {
 alert("click")
}


Когда делаю onclick срабатывает весь контент, как сделать чтобы только background срабатывал ?
Хотел ссылку на задний фон поставить
  • Вопрос задан
  • 79 просмотров
Решения вопроса 3
@marioKun
d=document.querySelector("#bg");
d.onclick = function(e) {
  if (e.target !== this)
    return;
 alert("click")
}

 Попробуйте так
Ответ написан
Stalker_RED
@Stalker_RED
d.addEventListener('click', evt => {
  if (evt.target === d) {
    alert('bingo')
  }
});

Почитайте о всплытии событий. У вас сейчас срабатывает на все события, в том числе те, что всплыли из дочерних элементов.

Всплывают все, но по event.target можно определить где именно был клик
Ответ написан
Aetae
@Aetae
Тлен
а) Не класть контент в #bg.
б) Назначить контенту
onclick = function(event) {
  event.stopPropagation();
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
Artezio Москва
от 160 000 до 220 000 ₽
Sportrecs Москва
от 150 000 до 200 000 ₽
30 нояб. 2020, в 23:24
1000 руб./за проект
30 нояб. 2020, в 22:50
100000 руб./за проект
30 нояб. 2020, в 22:47
600 руб./в час