【JavaScript】attachEvent 與addEventListener區別

1、 適應的瀏覽器不一樣

attachEvent方法適用於IE    addEventListener方法適用於FF瀏覽器

2、針對的事件不一樣dom

attachEvent中的事件帶on   而addEventListener中的事件不帶on函數

3、參數的個數不一樣this

attachEvent方法兩個參數:第一個參數爲事件名稱,第二個參數爲接收事件處理的函數; addEventListener 有三個參數:第一個參數表示事件名稱(不含 on,如 "click");第二個參數表示要接收事件處理的函數;第三個參數是一個bool值,通常爲false,第三個參數叫作useCapture,是一個boolean值,就是true or false,若是送出true的話就是瀏覽器會使用Capture方式,false的話是Bubbling,只有在特定情況下才會有影響,一般建議是false對象

4、執行事件的優先級不一樣事件

5、對this的引用不一樣io

holder_elem爲domfunction

if (holder_elem.attachEvent) {cli

                    holder_elem.attachEvent('onfocus', function() {List

                        placeEvent(holder_elem);

                    });

                } else {

                    holder_elem.addEventListener('focus', function() {

                        placeEvent(this);

                    }, false);

                }

此時attachEvent中,holder_elem依然爲dom,而addEventListener中,holder_elem爲Event對象,this指向了holder_elem

相關文章
相關標籤/搜索