阻止addEventListener(type,handler)在DOM中工作

问题描述 投票:0回答:1

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

第1步,导航到Chrome中的网站“ http://rehub.wpsoul.com”。

[步骤2)打开控制台。

第3步,在控制台中写下以下代码。

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

此代码无效。但是,如果将事件类型从“单击”更改为“滚动”,则效果很好。

是什么阻碍了在DOM中工作?

[每当我测试此代码时,某些网站就不会像该网站那样“加载”事件类型。

我为此感到头疼了几天。我想知道DOM和JS的原因和原理。

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

javascript dom addeventlistener
1个回答
0
投票

当您打开一个新窗口且其DOM尚不可用或未准备就绪时,该事件未绑定。请尝试以下代码,它将在5秒后绑定点击事件:

var neww = window.open('/')
setTimeout(function() {
    neww.document.body.addEventListener('click', function() {
        alert('hi');
    });
}, 5000);
© www.soinside.com 2019 - 2024. All rights reserved.