跨浏览器的事件处理程序
2017-08-16 10:43
183 查看
<button class="btn" style="color: red;" id="btn">点击进行交互</button>
/*跨浏览器的事件处理程序*/ var EventUtil = { addHandler:function(element,type,handler){ if(element.addEventListener){//检测是否存在DOM2级方法, element.addEventListener(type,handler,false);//如果存在DOM2级方法,传入事件类型,事件处理程序,和第三个参数false(表示冒泡阶段) }else if(element.attachEvent){ element.attachEvent("on" + type,handler);//如果存在的IE方法,为了在IE8以及更早的浏览器中运行,此类事件类型必须加上on前缀 }else{ element["on" + type] = handler;//DOM0级方法(现代浏览器中,应该运行不到这里的代码),此时使用的是方括号语法来将属性名指定为事件处理程序,或者将属性设置为null }//DOM0级对每个事件只支持一个事件处理程序。 }, 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; } } }; var bTn = document.getElementById("btn"); var handler = function(){ alert("clicked"); } EventUtil.addHandler(bTn,"click",handler); EventUtil.removeHandler(bTn,"click",handler);
相关文章推荐
- 跨浏览器的事件处理程序(javascript高级程序设计第二版第十二章)
- 详解javascript跨浏览器事件处理程序
- 多种DOM事件处理程序分析及跨浏览器的事件解决方案
- 跨浏览器事件处理程序及跨浏览器事件对象(事件笔记)
- 原生JS实现跨浏览器的事件处理程序
- 跨浏览器的事件处理程序感悟
- 跨浏览器的事件处理程序
- 跨浏览器的事件处理程序
- 如何写一个跨浏览器的事件处理程序 js
- 详解javascript跨浏览器事件处理程序
- 跨浏览器的事件处理程序
- 跨浏览器的事件处理程序
- DOM事件详解及调用(跨浏览器事件处理程序,判断语句)
- js事件处理程序跨浏览器解决方案
- 跨浏览器之事件处理程序
- 跨浏览器解决事件处理程序兼容问题
- IE事件处理程序与其他浏览器之区别
- 跨浏览器的事件处理程序
- 多种DOM事件处理程序分析及跨浏览器的事件解决方案
- 跨浏览器的事件处理程序