在IE中,每个window对象有两个方法,attachEvent()和detachEvent().所以顾名思义,attachEvent()用来给一个事件附加处理函数的,而detachEvent()用来讲事件处理函数分离出来,这两个方法都有两个参数:分别是要分配事件处理函数的名字如(onClick)及触发事件时候的处理函数
[Object].attachEvent('EventType',"Function")
[Object].detachEvent('EventType',"Function")
在attachEvent()中,函数被作为处理函数添加,detachEvent()在事件处理函数列中查找制定的函数 ,并且移除他。例如:
var fnClick=function(){
alert("Clicked");
}
var oDiv=document.getElementById("div");
oDiv.attachEvent("onclick",fnClick); //add the event handler
//do some other stuff here
oDiv.detachEvent("onclick",fnClick);
正如上面所描述的方式,这种方法可以添加多个事件处理函数:
var fnClick1=function (){
alert("Clicked");;
}
var fnClick2=function (){
alert("Also clicked");
}
var oDiv=document.getElementById("div");
oDiv.attachEvent("onclick",fnClick); //add the event handler
oDiv.attachEvent("onclick",fnClick2); //add the event handler
这段代码添加事件处理函数 执行的时候会弹出连个警告框,事件处理函数按照他们增加的顺序执行调用。
也可以用传统的javascript方法来分配事件处理函数
var fnClick1=function (){
alert("Clicked");;
}
var fnClick2=function (){
alert("Also clicked");
}
var oDiv=document.getElementById("div");
oDiv.onClick=fnClick;
oDiv.attachEvent("onclick",fnClick2); //add the event handler
这段代码和上面的例子是一样的,警告框显示的顺序也是一样的,传统方式的赋值也看成是另一种attachEvent()调用,所以处理函数仍按照定义他们的顺序执行
[Object].attachEvent('EventType',"Function")
[Object].detachEvent('EventType',"Function")
在attachEvent()中,函数被作为处理函数添加,detachEvent()在事件处理函数列中查找制定的函数 ,并且移除他。例如:
var fnClick=function(){
alert("Clicked");
}
var oDiv=document.getElementById("div");
oDiv.attachEvent("onclick",fnClick); //add the event handler
//do some other stuff here
oDiv.detachEvent("onclick",fnClick);
正如上面所描述的方式,这种方法可以添加多个事件处理函数:
var fnClick1=function (){
alert("Clicked");;
}
var fnClick2=function (){
alert("Also clicked");
}
var oDiv=document.getElementById("div");
oDiv.attachEvent("onclick",fnClick); //add the event handler
oDiv.attachEvent("onclick",fnClick2); //add the event handler
这段代码添加事件处理函数 执行的时候会弹出连个警告框,事件处理函数按照他们增加的顺序执行调用。
也可以用传统的javascript方法来分配事件处理函数
var fnClick1=function (){
alert("Clicked");;
}
var fnClick2=function (){
alert("Also clicked");
}
var oDiv=document.getElementById("div");
oDiv.onClick=fnClick;
oDiv.attachEvent("onclick",fnClick2); //add the event handler
这段代码和上面的例子是一样的,警告框显示的顺序也是一样的,传统方式的赋值也看成是另一种attachEvent()调用,所以处理函数仍按照定义他们的顺序执行