如何使用addEventListener添加事件
1个回答
2016-06-12 · 百度知道合伙人官方认证企业
兄弟连教育
兄弟连教育成立于2006年,11年来专注IT职业教育,是国内专业的IT技术培训学校。2016年成功挂牌新三板(股票代码:839467)市值过亿。开设专注程序员培训专注php、Java、UI、云计算、Python、HTML5、
向TA提问
关注
展开全部
火狐和其他浏览器都不支持,幸运的是他们都支持W3C标准的:
addEventListener和removeEventListener方法
形如:element.addEventListener(type,listener,useCapture);//添加事件
element.removeEventListener(type,listener,useCapture);//注销事件
这里需要和attchEvent相区别,event直接写事件名即可,如click事件->object.addEventListener("click",listener,useCapture);
例:
JS:
window.onload = function(){
var btn1 = document.getElementById("btn1");
btn1.addEventListener("click",test1,false);
var btn2 = document.getElementById("btn2");
btn2.addEventListener("click",function(){
btn1.removeEventListener("click",test1,false);
},false);
}
function test1(){
alert("111");
}
--------------------------------------------
html:
<button id="btn1">测试addEventListener</button>
<button id="btn2">测试removeEventListener</button>
-------------------------------------------------------------------------------
再将上面的例子改一下:
JS:
window.onload = function(){
var btn1 = document.getElementById("btn1");
btn1.addEventListener("click",test1,false);
btn1.addEventListener("click",test2,false);
btn1.addEventListener("click",test3,false);
var btn2 = document.getElementById("btn2");
btn2.addEventListener("click",function(){
btn1.removeEventListener("click",test1,false);
},false);
}
function test1(){
alert("111");
}
function test2(){
alert("222");
}
function test3(){
alert("333");
}
HTML:
<button id="btn1">测试addEventListener</button>
<button id="btn2">测试removeEventListener</button>
现象:页面打开之后,点击【测试addEventListener】,依次弹出"111","222","333"
说明,使用addEventListener添加事件后按照绑定顺序执行
再点击【测试removeEventListener】,则会发现不再弹“111”,即test1事件被注销
addEventListener和removeEventListener方法
形如:element.addEventListener(type,listener,useCapture);//添加事件
element.removeEventListener(type,listener,useCapture);//注销事件
这里需要和attchEvent相区别,event直接写事件名即可,如click事件->object.addEventListener("click",listener,useCapture);
例:
JS:
window.onload = function(){
var btn1 = document.getElementById("btn1");
btn1.addEventListener("click",test1,false);
var btn2 = document.getElementById("btn2");
btn2.addEventListener("click",function(){
btn1.removeEventListener("click",test1,false);
},false);
}
function test1(){
alert("111");
}
--------------------------------------------
html:
<button id="btn1">测试addEventListener</button>
<button id="btn2">测试removeEventListener</button>
-------------------------------------------------------------------------------
再将上面的例子改一下:
JS:
window.onload = function(){
var btn1 = document.getElementById("btn1");
btn1.addEventListener("click",test1,false);
btn1.addEventListener("click",test2,false);
btn1.addEventListener("click",test3,false);
var btn2 = document.getElementById("btn2");
btn2.addEventListener("click",function(){
btn1.removeEventListener("click",test1,false);
},false);
}
function test1(){
alert("111");
}
function test2(){
alert("222");
}
function test3(){
alert("333");
}
HTML:
<button id="btn1">测试addEventListener</button>
<button id="btn2">测试removeEventListener</button>
现象:页面打开之后,点击【测试addEventListener】,依次弹出"111","222","333"
说明,使用addEventListener添加事件后按照绑定顺序执行
再点击【测试removeEventListener】,则会发现不再弹“111”,即test1事件被注销
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询