封装 DOM事件 EventUtil对象 跨浏览器兼容

来源:互联网 发布:数据挖掘的是什么数据 编辑:程序博客网 时间:2024/04/29 22:25
/** eventUtil对象  封装了对DOM事件的 一些工具     完全兼容各种浏览器*/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.detachEvent){                 element.detachEvent('on'+type,handler);               }else{                 element['on'+type]=null;               }            },            //获取事件          getEvent:function(event){            return event?event:window.event;          },          //获取事件类型          getType:function(event){            return event.type;          },         //获取事件触发的DOM元素          getElement:function(event){            return event.target || event.srcElement;          },          //阻止默认行为  例如a标签的href自动跳转功能          preventDefault:function(event){            if(event.preventDefault){              event.preventDefault();            }else{              event.returnValue=false;            }          },          //阻止事件冒泡         stopPropagation:function(event){           if(event.stopPropagation){             event.stopPropagation();           }else{             event.cancelBubble=true;           }         }  }
0 0
原创粉丝点击