* 添加事件監聽函數
*obj 要添加監聽的對象或元素
* eventName 事件名
*fun 監聽函數的名稱
*param 給監聽函數傳的參數,這裏就傳了一個參數
*
functionaddEventHandler(obj,eventName,fun,param=''){
if(param)
{
fn =function(e)
{
fun.call(this, param); //繼承監聽函數,並傳入參數以初始化;
}
}
if(obj.attachEvent){
obj.attachEvent('on'+eventName,fn);
}elseif(obj.addEventListener){
obj.addEventListener(eventName,fn,false);
}else{
obj["on" +eventName] = fn;
}
}
*
* 刪除事件監聽函數
*obj 要添加監聽的對象或元素
* eventName 事件名
*fun 監聽函數的名稱
*
function removeEventHandler(obj,eventName, fun) {
if(obj.removeEventListener)
obj.removeEventListener(eventName, fun, false);
else if(obj.detachEvent)
obj.detachEvent("on" + eventName, fun);
else deleteobj["on" + eventName];
}
JS添加/綁定事件監聽函數測試
//添加test02監聽函數
function test2(){
var oview =document.getElementByIdx_x_x_x_x('eT1');
addEventHandler(oview,'click',test02);
}
//刪除test02監聽函數
function test2D(){
var oview =document.getElementByIdx_x_x_x_x('eT1');
removeEventHandler(oview,'click',test02);
}
var test002 = 0;
function test02(){
test002++;
document.getElementByIdx_x_x_x_x('sub').innerHTML = test002;
}