Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 某些东西阻止addEventListener(类型、处理程序)在DOM中工作_Javascript_Dom_Addeventlistener - Fatal编程技术网

Javascript 某些东西阻止addEventListener(类型、处理程序)在DOM中工作

Javascript 某些东西阻止addEventListener(类型、处理程序)在DOM中工作,javascript,dom,addeventlistener,Javascript,Dom,Addeventlistener,我正在学习Vanilla JS和DOM,并在console中测试一些代码。我有个问题 步骤1)在chrome中导航到网站“” 步骤2)打开控制台 步骤3)在控制台中写下以下代码 var neww = window.open('/') neww.addEventListener('click', function() { alert('hi'); }) 此代码不起作用。但是,如果我将事件类型从“click”更改为“scroll”,它确实可以正常工作 是什么阻碍了在DOM中工作 每当我测试

我正在学习Vanilla JS和DOM,并在console中测试一些代码。我有个问题

步骤1)在chrome中导航到网站“”

步骤2)打开控制台

步骤3)在控制台中写下以下代码

var neww = window.open('/')
neww.addEventListener('click', function() {
    alert('hi');
})
此代码不起作用。但是,如果我将事件类型从“click”更改为“scroll”,它确实可以正常工作

是什么阻碍了在DOM中工作

每当我测试这段代码时,有些网站就不能像这个网站那样使用事件类型“加载”

我头痛了好几天了。我想知道DOM和JS的原因和原理


我需要你的帮助,谢谢!:)

当您打开一个新窗口时,其DOM尚未可用或准备就绪,因此事件未绑定。请尝试以下代码:

var neww = window.open('/')
neww.addEventListener('load', function() {
    neww.document.body.addEventListener('click', function() {
        alert('hi');
    });
});

可以捕获事件并停止其传播。您可以检查哪些事件附加到DOM,以及如何使用DevTools处理这些事件。如果在新打开的窗口中打开dev tools并删除文档级侦听器,则单击最终将开始working@Teemu-你想叫什么就叫什么谢谢。根据您的评论,我在控制台中找到了eventlistener选项卡。你能给我一些提示来找出阻止我的事件类型的元素吗?提前感谢:)我现在手边没有Chrome,我也记不清它所有的工具了。但一般来说,事件有两个阶段,捕获阶段和冒泡阶段,这两个阶段都可以防止传播。请参阅。在其中一个事件处理程序中可能有
stopImmediatePropagation()
,这是一个值得阅读的主题:感谢您的回答。是的,我试过了,但不起作用。如果我键入了var neww=window.open('/'),在它完全加载之后,我键入了最后一个代码function(){neww.document.body.addEventListener('click',function(){alert('hi');它不工作,但事件类型'scroll'工作。我认为这与此无关。