addEventListener
page.addEventListener("change",function(e){
? ? var pageElement = document.querySelector("." + e.target.value)
? ? pageElement.style.zIndex = ++index;
},false) 這段代碼改成下面的那樣會有什么問題page.onchange=function(){
? ? var pageElement = document.querySelector("." + e.target.value)
? ? pageElement.style.zIndex = ++index;
}
2016-09-20
剛剛查了一下addEventListener對同一事件可以綁定多個執行函數,執行順序與定義順序一致;
onxxx事件綁定只會執行最后一個定義的函數
//層級 var?index?=?10; //切換切換 page.addEventListener("change",function(e){ ????//頁面元素 ????var?pageElement?=?document.querySelector("."?+?e.target.value) ????pageElement.style.zIndex?=?++index; },false) var?tip?=?document.querySelector("#tip"); page.addEventListener('change',function(e){ ????document.getElementById('tip').innerHTML=Math.random(); }) //?page.onchange?=?function(e){ //?????var?pageElement?=?document.querySelector("."?+?e.target.value) //?????pageElement.style.zIndex?=?++index; //?}; //?page.onchange?=?function(){ //?????document.getElementById('tip').innerHTML=Math.random(); //?}2016-02-25
還有一點就是,第一種寫法可以直接找到事件目標元素,能很方便的找到下拉框的value,從而改變層級。第二種寫法找目標元素就得用變量或者傳參了。只是個人一點認識,歡迎指正
2016-02-25
在PC端的問題不大,在移動端偶爾有兼容問題,一般來說移動端的事件都是由addEventListener來綁定