event.js// JavaScript Documentvar eventUntil={//添加句柄addHandler:function(element,type,handler){if(element.addEventListener){element.addEventListener(type,handle,false);}else if(element.attachEvent){element.attachEvent('on'+type,handler);}else{element['on'+type]=handler;}},//element.onclick===element[onclick]//刪除句柄deleHandler:function(elememt,type,handler){if(element.removeEventListener){element.removeEventListener(type,handle,false);}else if(element.detachEvent){element.detachEvent('on'+type,handler);}else{element['on'+type]=handler;}},//獲取事件getEvent:function(event){ return event?event:window.event;//解決IE8以下瀏覽器兼容問題 }, //獲取事件元素 getElement:function(event){ return event.target||event.srcElement; }, //阻止事件的默認操作 preventDefault:function(event){ if(event.preventDefault){ event.preventDefault(); }else{ event.returnValue=false; } }, //阻止事件冒泡 stopPropagation:function(event){ if(event.stopPropagation){ event.stopPropagation(); }else{ event.cancelBubble=true; } }}eventUntil.addhandler(btn,'click',show);eventUntil.deleHandler(btn,'click',null);script.jswindow.onload=function(){ var go=document.getElementById('go'), box=document.getElementById('box'); eventUntil.addHandler(go,'click',function(){ alert('box');}); eventUntil.addHandler(go,'click',function(e){ e=eventUntil.getEvent(e); alert(eventUnitil.getElement(e).nodeName); }) }HTML<html>?<head>? ?<title>事件流</title>? ?<meta charset="utf-8">? ?<script src="event.js"></script>? ?<script src="script.js"></script>? ?<body>? ? ? <div id="box">? ? ? ? ?<input type="button" value="按鈕" id="btn" onClick="showMes()">? ? ? ? ?<input type="button" value="按鈕2" id="btn2">? ? ? ? ?<input type="button" value="按鈕3" id="btn3">? ? ? ? ?<a href="event.html" id="go">跳轉</a>? ? ? ??? ? ? </div>? ?</body>?</head>為什么在js文件中的對HTML的操作都顯示不出來
關于dom跨瀏覽器問題
慕粉13727861792
2018-01-14 19:25:09