在js中加载事件的问题

时间:2013-07-01 00:47:53

标签: javascript

if (document.addEventListener) {
    document.addEventListener("DOMContentLoaded", handler, false);
    document.addEventListener("readystatechange", handler, false);
    window.addEventListener("load", handler, false);
} else if (document.attachEvent) {
    document.attachEvent("onreadystatechange", handler);
    window.attachEvent("onload", handler);
}

以上代码来自网站。

问题:

  1. 为什么DOMContentLoadedreadystatechange,我们在加载时使用document.addEventListener();,我们使用window.addEventListener(),为什么?

  2. 对于readystatechange,我们可以在IE中使用这种方式:document.attachEvent("onreadystatechange", handler);,aobut DOMContentLoaded如何?有没有办法可以在IE中使用它?

1 个答案:

答案 0 :(得分:0)

  1. 上下文,谁拥有您正在尝试收听的事件。当您想要收听<button>元素时,您不会在<input>元素上侦听事件:D

  2. DOMContentLoaded is supported natively in IE9+。在IE9之前,可以使用readystatechange