亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

瀏覽器兼容dom事件的測試為啥失敗了?

以下代碼為什么瀏覽器兼容部分測試失???問題在哪?

<!doctype <!DOCTYPE html>
<html>
<head>
?<title>dom</title>
?<script type="text/javascript" >
??function showmes(){
???alert("this message is shown")
??}
??var btn2=document.getElementById("btn2");
??btn2.onclick=showmes;
??
?</script>
</head>
<body>
<input type="button" id="btn1" value="btn1" onclick="showmes()"></input>
<input type="button" id="btn2" value="btn2"></input>
<input type="button" id="btn3" value="btn3"></input>
<input type="button" id="btn4" value="btn4IE"></input>
<input type="button" id="btn5" value="btn5封裝(解決瀏覽器兼容)"></input>
<script>

??function showmes(){
???alert("this message is shown")
??}
??// DOM0級的操作方法
??var btn2=document.getElementById("btn2");? // 載入事件
??btn2.onclick=showmes;??? // 添加事件
??btn2.onclick=null;?????? // 刪除事件
??// DOM2級的操作方法,可以添加多個事件處理程序,IE8及以下瀏覽器不支持
??var btn3=document.getElementById("btn3");?? // 載入事件
??btn3.addEventListener("click",showmes,false);?// 添加事件
??btn3.addEventListener("click",function(){
???alert(this.value);?????????????????????????? // this可以引用自身這個元素,引用被觸發的元素
??},false)
??//btn3.removeEventListener("click",showmes,false);?// 刪除事件
??// IE事件處理方法,僅IE瀏覽器支持
??var btn4=document.getElementById("btn4");
??btn4.attachEvent("onclick",showmes);
??btn4.detachEVent("onclick",showmes);?? // 刪除事件?
??var btn5=document.getElementById("btn5");
??//跨瀏覽器事件處理
??var EventUnit{??????????????????????? // 封裝事件對象
??????????? addEvent:function(element,type,handler){??????????????? // 添加事件函數
???????????? if(element.attachEvent){
??????????????????? element.attachEvent("on"+type,handler);
???????????? }else if(element.addEventListener){
???????????? ?element.addEventListener(type,handler,false);
???????????? }else{
???????????? ?element["on"+type]=handler;
???????????? }
??????????? }
??????????? delEvent:function(element,type,handler){??????????????? // 刪除事件函數
????????????? if(element.detachEvent){
??????????????????? element.detachEvent("on"+type,handler);
???????????? }else if(element.removeEventListener){
???????????? ?element.removeEventListener(type,handler,false);
???????????? }else{
???????????? ?element["on"+type]=null;
???????????? }??????????????
??????????? }
??}
??
???? EventUnit.addEvent(btn5,"click",showmes);
</script>
</body>
</html>

正在回答

3 回答

是因為封裝時候EventUnit后沒寫=號吧。

0 回復 有任何疑惑可以回復我~
#1

曦萍 提問者

非常感謝!
2016-05-02 回復 有任何疑惑可以回復我~
#2

曦萍 提問者

測試了一下,加了等號不行。能詳細點說等號加在哪里嗎??
2016-05-02 回復 有任何疑惑可以回復我~
#3

木木夕2 回復 曦萍 提問者

少了個逗號 addEvent和delEvent之間
2016-05-03 回復 有任何疑惑可以回復我~

添加事件和刪除事件之間,得用逗號隔開。不然會提示你符號錯誤。

0 回復 有任何疑惑可以回復我~

是因為封裝時候EventUnit后沒寫=號


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

瀏覽器兼容dom事件的測試為啥失敗了?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號