@yuriytkachenko

Что здесь изменить чтобы работало закрытие окна при клике на любое пустое место на странице?

есть вот такая у меня штука:
https://jsfiddle.net/2fs4vgu7/
1) при нажатии на кнопку открывается окно
2) при нажатии на крестик закрывается окно
Хотел сделать еще так чтобы при клике на любое пустое место на странице окно закрывалось.
Реализовать пробовал вот так:

window.onclick = (event) => box.style.display = (event.target == window ) ? "none";


Но это не работает. Пробовал вместо window везде написать document, но тоже не работает. В чем моя ошибка?
  • Вопрос задан
  • 86 просмотров
Решения вопроса 2
Mooncake8
@Mooncake8
Фронт и верстальщик
В целом не самая элегантная реализация, но суть такова
https://jsfiddle.net/mcake/890qw4nx/1/
Ответ написан
@dimoff66
Кратко о себе: Я есть
var changeBoxVisibility = show => {
	 box.style.display = show ? 'block' : 'none'	
}

var showBox = () => changeBoxVisibility(true)
var hideBox = () => changeBoxVisibility(false)

var open = document.querySelector("#open");
var close = document.querySelector(".close");

open.onclick = showBox
close.onclick = hideBox

Array.from([open, box]).forEach(el => {
	el.addEventListener('click', e => e.stopPropagation())	
})

document.addEventListener('click', hideBox)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы