1)對於大多數瀏覽器添加事件監聽使用addEventListener(),此函數使用方式為obj.addEventListener('method','function',bool);如添加鼠標點擊事件click,移動 mousemove等,第二個參數為調用的方法,第三個參數表示是否需要捕捉,是一個bool值;true表示使用capture,false表示bubbling,一般情況下都是用FALSE;此方法對於相同的函數只綁定一次,也就是說重復綁定相同的函數,只執行一次該方法。當一個對象同一種動作綁定了多個方法,調用順序則是先綁定先調用,區別於下面的attachEvent。
2)對於IE瀏覽器來說對應的添加監聽事件則是attachEvent。對事件進行監聽時,區別於addEventListener的click等寫法而應該使用onclick來進行表示。此方法調用時沒有bool值這個參數。
一般為了解決瀏覽器的兼容性,常進行以下書寫方式(以鼠標點擊事件為例):
if(obj.addEventListener)
obj.addEventListener("click","fun",false);
else if(obj.attachEvent)
obj.attachEvent("onclick","fun");
else
obj.onclick=fun;