@generate
...

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

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

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


Когда делаю onclick срабатывает весь контент, как сделать чтобы только background срабатывал ?
Хотел ссылку на задний фон поставить
  • Вопрос задан
  • 197 просмотров
Решения вопроса 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 Куратор тега JavaScript
Тлен
а) Не класть контент в #bg.
б) Назначить контенту
onclick = function(event) {
  event.stopPropagation();
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы