1.传统方式
$("div").onclick = handler;
fuction handel(){}
移除事件 $("div").onclick=null;
缺点:
$("div").onclick = handler1;
$("div").onclick = handler2;
$("div").onclick = handler3;只有handler3执行,前两个覆盖。
2.注册方式
A:
IE系列: $("div").attachEvent('onclick', handler);
$("div").attachEvent("onclick",handler1);
$("div").attachEvent("onclick",handler2);
$("div").attachEvent("onclick",handler3);执行顺序为handler3->handler2->handler1
IE下使用删除事件
detachEvent('onclick',handler);
B:
Mozilla系列:$("div").addEventListener('click', handler,false);最后一个参数是boolean类型的。如果是false,表示事件冒泡。如果为true则表示事件捕捉。IE只支持冒泡,所以通常都是false。
$("div").addEventListener("click",handler1,false);
$("div").addEventListener("click",handler2,false);
$("div").addEventListener("click",mhandler3,false);执行顺序为handler1->handler2->handler3
Mozilla下删除事件
removeEventListener('click',handler);
C:综合使用
var isIE = (document.all) ? true : false;
if (isIE){
window.attachEvent('onload',FuncName)
}
else{
window.addEventListener('load',FuncName,false);
}
$("div").onclick = handler;
fuction handel(){}
移除事件 $("div").onclick=null;
缺点:
$("div").onclick = handler1;
$("div").onclick = handler2;
$("div").onclick = handler3;只有handler3执行,前两个覆盖。
2.注册方式
A:
IE系列: $("div").attachEvent('onclick', handler);
$("div").attachEvent("onclick",handler1);
$("div").attachEvent("onclick",handler2);
$("div").attachEvent("onclick",handler3);执行顺序为handler3->handler2->handler1
IE下使用删除事件
detachEvent('onclick',handler);
B:
Mozilla系列:$("div").addEventListener('click', handler,false);最后一个参数是boolean类型的。如果是false,表示事件冒泡。如果为true则表示事件捕捉。IE只支持冒泡,所以通常都是false。
$("div").addEventListener("click",handler1,false);
$("div").addEventListener("click",handler2,false);
$("div").addEventListener("click",mhandler3,false);执行顺序为handler1->handler2->handler3
Mozilla下删除事件
removeEventListener('click',handler);
C:综合使用
var isIE = (document.all) ? true : false;
if (isIE){
window.attachEvent('onload',FuncName)
}
else{
window.addEventListener('load',FuncName,false);
}