addEventListener() ,removeEventListener()均为事件绑定操作,一个增加事件绑定,一个是移除事件绑定。
addEventListener(),用于向元素增加绑定事件,removeEventListener()用于向 元素移除绑定事件。
语法说明:
element.addEventListener(event,fn,useCaption );
参数说明:event,比如 click mouseenter mouseleave
fn 回调函数
useCaption 用于描述是冒泡还是捕获。默认值是false,即冒泡传递,当值为true,就是捕获传递。
实例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<button id = "btn-add">添加</button>
<button id = "btn-remove">删除添加按钮的mouseover事件</button>
<script type="text/javascript">
/*
W3C 事件绑定。
addEventListener(事件名称,事件处理函数,false)
removeEventListener(事件名称,事件处理函数,false)
注意:事件处理函数,一定要是一个函数。
比如:removeEventListener这个函数要写在function(){}里面.
*/
var btnadd = document.getElementById('btn-add');
var btnremove = document.getElementById('btn-remove');
btnadd.addEventListener("click",function(){
alert('dsafasdf')
},false);
btnadd.addEventListener('mouseover',show,false);
btnremove.addEventListener("click",function(){
//给btnremove的click事件添加btnadd的撤销mouseover事件。
btnadd.removeEventListener("mouseover",show,false);
},false)
function show(){
console.log('hello');
}
</script>
</body>
</html>
注意:removeEventListener() 不能移除匿名函数,只能使用有名字的参数,例如上面的show().