0
Я хочу удалить оверлей, когда я нажимал и изображение, но это не так. Оверлей исчезает, когда я нажимаю на div (оверлей), но не тогда, когда я нажимал на фотографию. Консоль не показывала мне ошибок.removeChild работает только из img
(function(){
window.onclick=function (e){
var hit=e.target.tagName;
if(hit=='IMG'){
overlay=document.createElement('div');
overlay.id='photo';
document.body.appendChild(overlay);
overlay.style.position='absolute';
overlay.style.top=0;
overlay.style.background='rgba(0,0,0,0.53)';
overlay.style.cursor='pointer';
overlay.style.width=window.innerWidth+"px";
overlay.style.height=window.innerHeight+"px";
photo=e.target.src;
popeikona=document.createElement('IMG');
popeikona.src=photo;
overlay.appendChild(popeikona);
popeikona.style.width='550px';
popeikona.style.height='380px';
popeikona.style.margin='15%';
};
overlay.addEventListener('click',function(){
overlay.parentElement.removeChild(overlay);
});
window.onscroll=function(){
if(overlay){
overlay.style.top=window.pageYOffset+"px";
overlay.style.left=window.pageXOffset+"px";
}
};
console.log(overlay);
}
}());
Любые предложения?
Нет actually.When Я ударил IMG код работает right.Then я нажал накладку и это disappear.I повторить процесс, и когда я нажал на IMG внутри наложения наложения не исчезнет. – liontass
Хорошо, я понимаю. Причина, по которой он не исчез, заключается в том, что вы создали новый элемент overlay, который не имеет обработчика события. Я сейчас обновлю свой ответ. – Matus