Javascript 使用addEventListener加载的DOMContents

Javascript 使用addEventListener加载的DOMContents,javascript,html,Javascript,Html,我想知道为什么我不能在我的DOMContentLoaded函数中添加事件侦听器,我的问题是他在加载之前触发单击,然后在加载之后不执行任何操作: HTML 我做了一把小提琴: 我必须使用DOMContentLoaded,因为在我的代码中有XMLHTTP请求,这些请求只能在加载html后触发 如何修复此问题?这是因为您需要分配一个函数作为事件回调alert('HELLO!')将调用alert函数并将其返回值(undefined)作为事件回调传递 您要执行以下操作: btn.addEventList

我想知道为什么我不能在我的DOMContentLoaded函数中添加事件侦听器,我的问题是他在加载之前触发单击,然后在加载之后不执行任何操作:

HTML

我做了一把小提琴:

我必须使用DOMContentLoaded,因为在我的代码中有XMLHTTP请求,这些请求只能在加载html后触发


如何修复此问题?

这是因为您需要分配一个函数作为事件回调
alert('HELLO!')
将调用
alert
函数并将其返回值(
undefined
)作为事件回调传递

您要执行以下操作:

btn.addEventListener('click', function(){
    alert('HELLO!');
}, false);

@乔希·哈里森:我是个忍者^~^
var btn=document.createElement("BUTTON");
var t=document.createTextNode("CLICK ME");
btn.appendChild(t);
document.body.appendChild(btn);

btn.addEventListener('click',alert('HELLO!'),false);
btn.addEventListener('click', function(){
    alert('HELLO!');
}, false);