2013-07-01 4 views
-1
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); 
} 

Выше коды взяты с сайта.issue with loading events in js

Вопросы:

  1. почему для DOMContentLoaded и readystatechange, мы используем document.addEventListener(); то время как груз, мы используем window.addEventListener(), почему?

  2. Для readystatechange, мы можем использовать в IE таким образом: document.attachEvent("onreadystatechange", handler);, как aobut DOMContentLoaded? есть ли способ, которым мы можем использовать его в IE?

ответ

0
  1. Контекст, кто владеет событиями, которые вы пытаетесь слушать. Вы не слушаете события на <button> элементах, если хотите прослушать <input> элементов: D

  2. DOMContentLoaded is supported natively in IE9+. До IE9 можно использовать readystatechange.