码迷,mamicode.com
首页 > Web开发 > 详细

js事件跨浏览器处理方案

时间:2014-09-15 15:54:59      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:io   ar   sp   cti   on   c   ad   ef   r   

js跨浏览器事件工具:

//事件工具对象

var EventUtil = {};

 

//添加事件

EventUtil.addEvent = function(element,type,handle) {

     if(element.addEventListener) { //dom事件

           element.addEventListener(type,handle,false);

     }

    else if(element.attachEvent) {

           element.attachEvent("on" + type,handle);

    }

    else {

           element["on" + type] = handle;

     }

}

//删除事件

EventUtil.removeEvent = function(element,type,handle) {

     if(element.removeEventListener) { //dom事件

           element.removeEventListener(type,handle,false);

     }

    else if(element.detachEvent) {

           element.detachEvent("on" + type,handle);

    }

    else {

           element["on" + type] = handle;

     }

}

//得到event

EventUtil.getEvent = function(event) {

     return event?event:window.event;

}

 

//得到当前事件拥有对象

EventUtil.getTarget = function(event) {

    return event.targert || event.srcElement;

}

 

//阻止浏览器默认事件

EventUtil.preventDefault = function(event) {\

    if(event.preventDefault) {

        event.preventDefault();

    }

   else {

    event.returnValue = false;

   }

}

 

//阻止事件捕获或冒泡

 EventUtil.stopPropagation = function(event) {

     if(event.stopPropagation) {

          event.stopPropagation();

     }

     else {

         event.cancelBubble = false;

    }

 

js事件跨浏览器处理方案

标签:io   ar   sp   cti   on   c   ad   ef   r   

原文地址:http://www.cnblogs.com/ai3xiaoyi/p/3972869.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!