我想知道为什么我不能在我的DOMContentLoaded函数中添加一个事件侦听器,我的问题是他在加载之前触发单击,然后在加载之后什么也不做:
HTML
<body>
This is a test.<br>
</body>JS //DOMContentLoaded..。
var btn=document.createElement("BUTTON");
var t=document.createTextNode("CLICK ME");
btn.appendChild(t);
document.body.appendChild(btn);
btn.addEventListener('click',alert('HELLO!'),false);我做了一个小提琴:http://jsfiddle.net/hH5Lh/
我必须使用DOMContentLoaded,因为在我的代码中,只有在加载了html之后才能触发XMLHTTP请求.
我怎么才能解决这个问题?
发布于 2014-01-21 17:04:06
这是因为您需要指定一个函数作为事件回调。alert('HELLO!')将调用alert函数并将其返回值(undefined)作为事件回调传递。
你想这么做:
btn.addEventListener('click', function(){
alert('HELLO!');
}, false);https://stackoverflow.com/questions/21264397
复制相似问题