通过addEventListener添加代码,不需要循环mouseover

我想通过addEventListener添加一些代码。我会使用DOMContentLoaded,但我试图选择的ID在页面加载时不可用。我可以使用mouseover,但它可以随时迭代代码。我也可以使用click事件,但我不希望它在点击时显示,但只是在显示时显示。我该如何处理?通过addEventListener添加代码,不需要循环mouseover

document.addEventListener("mouseover", function(event){ 

document.querySelector("#id").insertAdjacentHTML('afterend', '<div>asd</div>');

});

回答:

您需要委托

var yourSpecificId = "some-id"; 

document.addEventListener("mouseover", function(event){

if (event.target.id == yourSpecificId) //only when the id of the mouseover element is matching yourSpecificId

{

//code you want to execute

}

});

回答:

我会建议一个Mutation Observer。这看起来很难实现,但它很容易。您可以提供回调函数,然后使用快速的if语句来检查新添加的元素是否具有正确的id。如果是这样,运行你的代码并断开观察者。

如果您发布了一个有关何时添加元素以及需要运行的功能的工作示例,那将更容易为您提供帮助。

阅读此博客:https://davidwalsh.name/mutationobserver-api

以上是 通过addEventListener添加代码,不需要循环mouseover 的全部内容, 来源链接: utcz.com/qa/265497.html

回到顶部