JavaScript中的事件處理程序
更新時間:2022年04月27日 08:35:46 作者:農(nóng)碼一生
這篇文章介紹了JavaScript中的事件處理程序,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
一、Html事件處理程序
弊端:與標簽耦合度太高,直接綁定在標簽體上
<body>
<button type="button" onclick="alert('消息框');" onmouseout="console.log('控制臺')">Html事件處理程序</button>
<button type="button" onclick="fun1();" onmouseout="console.log('控制臺')">Html事件處理程序</button>
<script type="text/javascript">
//Html事件處理程序
function fun1(){
alert("消息框");
}
//加載事件 load 當(dāng)頁面中元素和引入的資源加載完畢之后執(zhí)行里面的代碼
window.onload = function(){
//。。。。。。。
}
</script>
</body>二 、DOM 0級事件處理程序
弊端:不能給同一個元素綁定同一個事件多次
<body>
<button type="button" id="but1">DOM0級事件處理程序</button>
<script type="text/javascript">
/* DOM0級事件處理程序 */
//獲取元素
var but1 = document.getElementById("but1");
// 2.給元素綁定事件
but1.onclick = function(){
console.log('DOM0級事件處理程序1');
}
//添加的第二的Click事件起作用,第一個被覆蓋
but1.onclick = function(){
console.log('DOM0級事件處理程序2');
}
</script>
</body>三、DOM2級事件處理程序
優(yōu)點:解決了以上的兩個弊端,可以綁定對個事件
<body>
<button type="button" id="but2">DOM2級事件處理程序</button>
<button type="button" id="but3">刪除DOM2級事件處理程序</button>
<script type="text/javascript">
//DOM2級事件處理程序
//獲取元素
var but2 = document.getElementById("but2");
var but3 = document.getElementById("but3");
but2.addEventListener("click",function(){
console.log("DOM2級事件處理程序1");
});
but2.addEventListener("click",function(){
console.log("DOM2級事件處理程序2");
});
function fun3(){
console.log("有方法名的處理程序");
}
but2.addEventListener('mouseover',fun3);
//移除but2的某個事件
but3.addEventListener("click",function(){
but2.removeEventListener('mouseover',fun3);
});
</script>
</body>?以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
理解Javascript_02_理解undefined和null
其實在 ECMAScript 的原始類型中,是有Undefined 和 Null 類型的。 這兩種類型都分別對應(yīng)了屬于自己的唯一專用值,即undefined 和 null。2010-10-10
為JavaScript類型增加方法的實現(xiàn)代碼(增加功能)
大家在js開發(fā)過程中有些功能已經(jīng)滿足不了我們的需求,或沒有我們需要的功能,那么我們就可以自己擴展下,個性化js2011-12-12
JavaScript中valueOf函數(shù)與toString方法深入理解
基本上,所有JS數(shù)據(jù)類型都擁有valueOf和toString這兩個方法,null除外。它們倆解決javascript值運算與顯示的問題,本文將詳細介紹,有需要的朋友可以參考下2012-12-12

