作家
登录

javascript高级程序设计第二版第十二章事件要点总结(常用的跨浏览器检测方法)

作者: 来源:www.28hudong.com 2013-03-30 00:24:16 阅读 我要评论

复制代码 代码如下: var EventUtil={ //跨浏览器处理程序---创建方法 addHandler:function(element,type,handler){ if(element.addEventListener){ element.addEventListneter(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.removeEventListneter(type,handler,false); }else if(element.detachEvent){ element.detachEvent("on"+type,handler); }else{ element["on"+type]=handler; } } getEvent:function(event){ //跨浏览器事件对象---返回event对象的引用 return event?event:window.event; } getTarget: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.canceBubble=false; } } getRelatedTarget:function(event){ //跨浏览器获取相关元素 if(event.relatedTarget){ return event.relatedTarget; }else if(event.toElement){ return envent.toElement; }else if(event.fromElement){ return event.fromElement; }else{ return null; } } getButton:function(event){ //鼠标事件的button属性检测 if(document.implementation.hasFeature("MouseEvent","2.0")){ return event.button; }else{ switch(event.button){ case 0: case 1: case 3: case 5: case 7: return 0; case 2: case 6: return 2 case 4: return 1 } } } getCharCode:function(event){ //跨浏览器字符编码---charCode属性检测 if(typeof event,charCode=="number"){ return event.charCode; }else{ return event.keyCode; } } } 事件委托:事件处理程序过多的解决方案,减少内存并且提高性能; 模拟事件:这个比较复杂,要慢慢研究;

  推荐阅读

  JSONP 跨域共享信息

由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com 的服务器沟通,而 HTML 的 <script> 元素是一个例外。利用 <script> 元素的这个开放策略,网页可以得到从其他来源动态产生>>>详细阅读


本文标题:javascript高级程序设计第二版第十二章事件要点总结(常用的跨浏览器检测方法)

地址:http://www.17bianji.com/kaifa2/JS/23157.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)