domReay,在DOM树建完之前,所有添加的回调存到一个列队中,待到DOM树建完,依次执行它们,以后来一个执行一个。
onload(使用多投事件), 在页面资源加载完之前,所有添加的回调存到一个列队中,待到资源加载完毕,依次执行它们。由于每个页面只有一次onload,因此页面加载完后的再添加的回调不会再执行。
window.addEventListner("click",function(){ alert(1) },false); window.addEventListner("click",function(){ alert(2) },false); window.addEventListner("click",function(){ alert(2) },false); setTimeout(function(){ window.addEventListner("click",function(){ alert(4)//这个如果在window.onload之后添加,就不会执行了! },false); },30000)
普通的事件,如onclick(使用多投事件),每次都会把列队中的事件执行一遍。
ajax回调,由于AJAX都是生成一个新的XMLHttpRequest对象,因此之前这个对象绑定了多少个回调,就执行多少个,然后销毁。
注意,每个事件的执行都不会影响下一个。