事件处理类型的三种方法

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<input type="button" name="btn1" id="btn1" value="按钮1" />
<input type="button" name="btn1" id="btn2" value="按钮2" />
<input type="button" name="btn1" id="btn3" value="按钮3" />
<div id="div1">

</div>
<script type="text/javascript">
var btn1=document.getElementById("btn1");
var btn2=document.getElementById("btn2");
var btn3=document.getElementById("btn3");
var div1=document.getElementById("div1");
btn1.onclick=function show(){
div1.innerHTML="click"; //不执行
}
btn1.onmouseover=function show2(){ //执行
div1.innerHTML="over";
}
btn1.onclick=null; //删除该事件
//DOM0级只能添加一个事件,添加多个只执行最后一个


btn2.addEventListener("click",show,false); //是click,前面不能加on
btn2.addEventListener("mouseover",show2,false);//false是冒泡,如果true是捕获
function show(){
div1.innerHTML="click";//执行
}
function show2(){
div1.innerHTML="over";//执行
}
btn2.removeEventListener("click",show,false);//移除事件
//DOM2级可以添加多个事件,但ie9以下不执行。


//ie8及以前的版本只有事件冒泡,所以IE处理事件就没有boolean了,除了ie8及以前的版本支持外,其他浏览器不支持
btn3.attachEvent("onclick",show);
btn3.attachEvent("onmouseover",show2);
function show(){
div1.innerHTML="click";//执行
}
function show2(){
div1.innerHTML="over";//执行
}
btn3.detachEvent("onclick",show);//删除事件
</script>
</body>
</html>

本人总结的方法,如果有哪里不对的话,希望能跟我说一下

原文地址:https://www.cnblogs.com/luoguixin/p/6123173.html