事件處理基礎知識

事件處理分爲DOM0,DOM2,DOM3事件。html

DOM0就是直接經過 onclick寫在html裏面的事件, 好比:<input onclick="alert(1)" />,或者經過獲取id的方式在js中直接添加onclick,好比document.getElementById("id").onclick。不可以添加多個事件方法,只顯示最後一個。瀏覽器

DOM2是經過addEventListener綁定的事件, 還有IE下的DOM2事件經過attachEvent綁定。IE的事件流是冒泡, 從裏面往上面冒。而現代瀏覽器默認冒泡,若將addEventListener的第三個參數設置爲false,則爲捕獲。能夠進行事件累加,addEventListener是DOM2,但attachEvent不是DOM2,是IE本身的方法,雖能夠實現事件累加,但順序是反着的。htm

 

 

好比以下代碼: if(document.addEventListener){         //addEventListener是DOM2,
         p1.addEventListener("click",function(){
            alert("hello");     //現代瀏覽器,先顯示hello,後顯示hi
        },true);       //true - 事件句柄在捕獲階段執行;false-  默認。事件句柄在冒泡階段執行
        p1.addEventListener("click",function(){
            alert("hi");
        },true);
        }else{       //兼容IE瀏覽器,此方法不是DOM2,能夠添加多種事件方法,可是先顯示hi再顯示hello
        p1.attachEvent("onclick",function(){
            alert("hello");
        });
        p1.attachEvent("onclick",function(){
            alert("hi");
        });
        }事件

相關文章
相關標籤/搜索