誰能幫我看一下btn5也就是跨瀏覽器事件處理按鈕為什么彈不出來嗎
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>四種事件處理程序</title>
</head>
<body>
<input type="button" value="HTML事件處理" id="btn1" onclick="showMess()">
<input type="button" value="DOM0級" id="btn2">
<input type="button" value="DOM2級" id="btn3">
<input type="button" value="IE事件處理" id="btn4">
<input type="button" value="跨瀏覽器事件處理" id="btn5">
<script type="text/javascript">
//一、HTML事件處理程序
function showMess(){
alert("Hello!");
}
//二、DOM0級事件處理程序
var btn2=document.getElementById("btn2");
btn2.onclick=function(){alert("Hello!")};//或者btn2.onclick=showMess;
//btn2.onclick=null;//刪除事件程序
//三、DOM2級事件處理程序
var btn3=document.getElementById("btn3");
btn3.addEventListener("click",showMess,false);//三個值分別是“事件類型”,“觸發(fā)函數名”,“布爾值”
//btn3.removeEventListener("click",showMess,false);//刪除事件程序,三個參數必須與上面相同
//四、IE事件處理程序(因為IE不支持DOM2級)
var btn4=document.getElementById("btn4");
btn4.attachEvent("onclick",showMess);//比DOM2級少了布爾值
//btn4.detachEvent("onclick",showMess);//刪除
var btn5=document.getElementById("btn5");
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;
}
},//不要漏了逗號?。。。。。。。。。。。。。。?/p>
//刪除句柄
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;
}
}
}
eventUtil.addHandler(btn5,'click',showMess);
</script>
</body>
</html>
2016-03-25
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>四種事件處理程序</title>
</head>
<body>
<input type="button" value="HTML事件處理" id="btn1" onclick="showMess()">
<input type="button" value="DOM0級" id="btn2">
<input type="button" value="DOM2級" id="btn3">
<input type="button" value="IE事件處理" id="btn4">
<input type="button" value="跨瀏覽器事件處理" id="btn5">
<script type="text/javascript">
//一、HTML事件處理程序
function showMess(){
alert("Hello!");
}
//二、DOM0級事件處理程序
var btn2=document.getElementById("btn2");
btn2.onclick=function(){alert("Hello!")};//或者btn2.onclick=showMess;
//btn2.onclick=null;//刪除事件程序
//三、DOM2級事件處理程序
var btn3=document.getElementById("btn3");
btn3.addEventListener("click",showMess,false);//三個值分別是“事件類型”,“觸發(fā)函數名”,“布爾值”
//btn3.removeEventListener("click",showMess,false);//刪除事件程序,三個參數必須與上面相同
//四、IE事件處理程序(因為IE不支持DOM2級)
var btn4=document.getElementById("btn4");
// btn4.attachEvent("onclick",showMess);//比DOM2級少了布爾值
//btn4.detachEvent("onclick",showMess);//刪除
var btn5=document.getElementById("btn5");
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;
}
}
}
eventUtil.addHandler(btn5,'click',showMess);
</script>
</body>
</html>
2016-03-25
你的瀏覽器對attachEvent支持嗎???
如果不支持 就把
?btn4.attachEvent("onclick",showMess);//比DOM2級少了布爾值
這一行注釋掉,試一下
在我這里注釋了之后,就可以了,你試試