為什么不能阻止冒泡和默認行為
//?JavaScript?Document //這是event.js 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.attachEvent) { element.detachEvent('on'+type,handler); } else{ element['on'+type]=null; } }, //獲取事件對象 getEvent:function(event) { return?event?event:window.event; }, //獲取事件類型 getType:function(event) { return?event.type; }, //獲取事件節(jié)點 getElement:function(event) { return?event.target.nodeName||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; } }, }
//這是script.js //?JavaScript?Document window.onload=function() { var?go=document.getElementById('go'); var?box=document.getElementById('box'); eventUtil.addHandler(box,'click',function() { alert('我是盒子box!'); }); eventUtil.addHander(go,'click',function(e) {e=eventUtil.getEvent(e); alert(eventUtil.getElement(e)); eventUtil.preventDefault(e); eventUtil.stopPropagation(e); }); } 這是HTML
<!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> <script?src="event.js"></script> <script?src="script.js"></script> </head> <body> <div?id="box"> <input?type="button"?id="btn"?value="按鈕"?onclick="showMes()"/> <input?type="button"?id="btn2"?value="按鈕2"?/> <input?type="button"?id="btn3"?value="按鈕3"?/> <a?href="HelloWorld.html"?id="go">跳轉</a> </div> </body> </html>
為什么不能阻止冒泡和默認行為??求解
2017-03-25
script.js里的eventUtil.addHander ? ?addHandler少了一個l
2016-12-19
就是不能結束默認行為,還是跳到HelloWorld.html這個界面
2016-12-19
2016-12-19
script引入的js文件和這個html文件是在一個文件夾里??