<!DOCTYPE html>
<html>
<head>
<meta charset="utf8">
<title>跨浏览器解决</title>
</head>
<body>
<div id="box">
<input type="button" value="按钮1" id="btn1" onclick="showmes()"></input>
<input type="button" value="按钮2" id="btn2"></input>
<input type="button" value="按钮3" id="btn3"></input>
</div>
<script type="text/javascript">
//HTML事件处理程序
function showmes() {
alert("好好学习");
};
//DOM0级事件处理程序
var btn2=document.getElementById("btn2");
var btn3=document.getElementById("btn3");
btn2.onclick=function(){
alert("这是通过DOM0级添加的事件");
}
//btn2.onclick=null;
// //DOM2级事件
// // btn3.addEventListener('click',showmes,false);
// // btn3.removeEventListener('click',function(){
// // alert("DOM2级移除事件")
// // },flase);
// //IE事件处理流
// btn3.attachEvent('onclick',showmes)
// btn3.detachEvent('onclick',shoumes)
var eventUtil={
//添加句柄
addHandler:function(element,type,handler){
if(element.addEventListener){
element.addEventListener(type,handler,false)
}else if(element.attachEvent){
element.attachEvent('on'+type,handler);
}
else{
element['on'+type]=handler;
}
},
删除句柄
removeHandler:function(element,type,handler){
if(element.removeEventListener){
element.removeEventListener(type,handler,false)
}else if(element.detachEvent){
element.detachEvent('on'+type,handler)
}
else{
element['on'+type]=null;//element.onclick===element['onclick']
}
}
}
eventUtil.addHandler(btn3,'click',showmes)
</script>
</body>
</html>
删除句柄哪个前面没有注释,浏览器以为是JS代码,所以报错,
//删除句柄 这样就好了。
能再问一个问题吗?<meta charset="utf8">。IE浏览器中打开,按钮的上的汉字显示乱码,而且按钮三没反应,而按钮2和按钮1弹出提示框“ni hao”