Possible Duplicate:
What is the difference of using addEventListener?
我注意到可以直接在对象上分配事件,而不必使用 addEventListener:
document.onload = function(e){
// do stuff..
};
代替:
document.addEventListener('load', function(e){
// do stuff..
});
那么我有什么理由不应该使用第一种方法吗?为什么其他人不使用它?
这似乎也适用于旧版 IE(您需要 attachEvent)。
考虑如果您尝试以下操作会发生什么(我将事件附加到 window
因为这是您应该监听此事件的地方)
window.onload = function (e) {console.log('A');};
window.onload = function (e) {console.log('B');};
对比
window.addEventListener('load', function (e) {console.log('C');}, false);
window.addEventListener('load', function (e) {console.log('D');}, false);
从第一个代码块你只会看到“B”
,但从第二个代码块你会看到“C”
和“D”
。 Fiddle (请打开控制台查看)。