js解除绑定事件
特别注意事项:addEventListener和attachEvent在结构里面的函数都需要写出来,然后再在结构里面调用函数,这样可以确保两个结构里面的都是同一个函数。如果说把函数体写入结构里面,那么就相当于深度复制,两个函数体完全不是同一个函数体
- 注意:用什么方式绑定事件,就应该用对应的方式解绑事件
- 1.解绑事件
- 对象.on事件名字=事件处理函数—>绑定事件
- 对象.on事件名字=null/false;
- 2.解绑事件
- 对象.addEventListener(“没有on的事件类型”,命名函数,false);—绑定事件
- 对象.removeEventListener(“没有on的事件类型”,函数名字,false);
- 3.解绑事件
- 对象.attachEvent(“on事件类型”,命名函数);—绑定事件
- 对象.detachEvent(“on事件类型”,函数名字);
举个例子
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
omnclick解除绑定事件
// window.onkeydown = function(){
// if(event.key==('a'&&'w')){
// console.log('ok');
// }
// }
// window.onkeydown =null;
addEventListener解除绑定事件
function test (){
if(event.key=='a'){
console.log('q');
}
}
window.addEventListener('keydown',test,false);
window.removeEventListener('keydown',test,false);
</script>
</body>
</html>