Javascript 如何在稍后出现在DOM中的元素上挂起事件?

Javascript 如何在稍后出现在DOM中的元素上挂起事件?,javascript,events,browserify,buttonclick,Javascript,Events,Browserify,Buttonclick,我使用Browserify处理JS中的模块(require)。但是,当我在js文件中呈现一个元素并希望在其上挂起一个事件(onclick)时,会出现以下错误 未捕获类型错误:无法设置未定义的属性“onclick” 如何在稍后出现在DOM中的元素上挂起事件 如何在稍后出现在DOM中的元素上挂起事件 没办法。您应该更改应用程序的逻辑。您可以在父级上侦听onClick事件。然后选择元素以选择您需要的新元素。您可以使用它。基本上,您可以向文档添加一个事件侦听器。在handler方法中,检查事件目标的区别

我使用Browserify处理JS中的模块(require)。但是,当我在js文件中呈现一个元素并希望在其上挂起一个事件(onclick)时,会出现以下错误

未捕获类型错误:无法设置未定义的属性“onclick”

如何在稍后出现在DOM中的元素上挂起事件

如何在稍后出现在DOM中的元素上挂起事件

没办法。您应该更改应用程序的逻辑。您可以在父级上侦听onClick事件。然后选择元素以选择您需要的新元素。

您可以使用它。基本上,您可以向
文档
添加一个事件侦听器。在handler方法中,检查事件
目标
的区别属性。如果
目标
包含该属性,请执行某些操作,否则不会发生任何事情。这样,就可以处理以后添加的元素

//将侦听器添加到文档
document.addEventListener(“单击”,显示单击);
//向DOM添加一个新元素
const newElement=document.createElement(“div”);
newElement.innerHTML=“我是新的!单击我!”;
newElement.id=“new”;
newElement.style.cursor=“指针”;
document.body.appendChild(新元素);
//这将处理所有单击
功能显示单击(evt){
//如果是新的,做点什么
如果(evt.target.id==“新建”){
log(“我们到了!”);
}
//否则什么也不会发生
}

我在页面加载后存在。试着点击我,我敢说
您可以提供一个实际的代码示例,这可以帮助其他人找到问题的解决方案。您不能这样做,因为默认情况下,事件会冒泡(除非介于两者之间的某个事件发生了
event.stopPropagation()
),您可以将单击处理程序放在链中较高的元素上,并检查
event.target
。听起来你需要重新思考你在做什么,或者允许一个UI框架来指导你进行更好的实践。