js原生添加事件的方式
js原生添加事件的方式:
1. 直接在html標簽上添加
<div onclick="alert(‘div‘)">div</div>
2. 用dom的on...方法添加
document.getElementById(‘div‘).onclick = function () {alert(‘div‘)};
3. 用addEventListener或attachEvent添加
document.getElementById(‘div‘).addEventListener(‘click‘, function () {alert(‘div‘)}, false);
原生js事件綁定和事件移除
/**
* @description 事件綁定,兼容各瀏覽器
* @param target 事件觸發對象
* @param type 事件
* @param func 事件處理函數
*/
function addEvents(target, type, func) {
if (target.addEventListener) //非ie 和ie9
target.addEventListener(type, func, false);
// addEventListener當然就是註冊事件,她有三個參數,分別為:"事件名稱
else if (target.attachEvent) //ie6到ie8
target.attachEvent("on" + type, func);
else target["on" + type] = func; //ie5
};
/**
* @description 事件移除,兼容各瀏覽器
* @param target 事件觸發對象
* @param type 事件
* @param func 事件處理函數
*/
function removeEvents(target, type, func){
if (target.removeEventListener)
target.removeEventListener(type, func, false);
else if (target.detachEvent)
target.detachEvent("on" + type, func);
else target["on" + type] = null;
};
/**btn.removeEventListener("事件名稱", "事件回調", "捕獲/冒泡");這和綁定事件的參數一樣,詳細說明下:
· 事件名稱,就是說解除哪個事件唄。
· 事件回調,是一個函數,這個函數必須和註冊事件的函數是同一個。
· 事件類型,布爾值,這個必須和註冊事件時的類型一致。
*/
原生JavaScript事件詳解:http://www.cnblogs.com/iyangyuan/p/4190773.html
js原生添加事件的方式