• 跨浏览器事件处理程序


     window.onload = function(){
                var Event = {
                    addHandler : function(element,type,handler){
                        if(element.addEventListener){
                            element.addEventListener(type,handler,false);//DOM2级方法 三个参数 事件名称 事件处理程序函数 最后一个布尔值参数如果为true表示在捕获阶段调用事件处理处理程序 如果是false表示在冒泡阶段调用事件处理程序 默认为false
                        }else if(element.attachEvent(type,handler)){//attachEvent是IE中的方法
                            element.attachEvent('on'+type,handler);//接受两个参数 并且事件名称需要加'on' onclick
                        }else{
                            element['on'+type] = handler;//DOM0级
                        }
                    },
                    removeHandler : function(element,type,handler){
                        if(element.removeEventListener(type,handler,false)){//移除的时候 所有参数必须 与创建的一致 否则无法删除 如果handler是个匿名函数 无法删除。
                            element.removeEventListener(type,handler,false);
                        }else if(element.detachEvent('on'+type,handler)){
                            element.detachEvent('on'+type,handler)
                        }else{
                            element['on'+type] = null;
                        }
                    }
                }
                function al(){
                    alert('按钮被单击了');
                }
                var oBtn = document.getElementById('btn');
                Event.addHandler(oBtn,'click',al);
            }
    <input type="button" value="按钮" id="btn"/>
  • 相关阅读:
    下雪诗
    华视身份证阅读器100UC HTTP模式二次开发
    C# Action 和 Func 区别
    网站部署——文件系统
    前端-JavaScript DOM和BOM
    IO多路复用
    python-协程
    python-线程
    python-进程
    计算机与操作系统简介
  • 原文地址:https://www.cnblogs.com/dzxczx/p/5459631.html
Copyright © 2020-2023  润新知