event事件对象的兼容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了event事件对象的兼容相关的知识,希望对你有一定的参考价值。

var event = {

    // 添加事件监听
    add: function(element, type, callback){

        if(element.addEventListener){
            element.addEventListener(type, callback, false);
        } else if(element.attachEvent){
            element.attachEvent(‘on‘ + type, callback);
        } else {
            element[‘on‘ + type] = callback;
        }
    },

    // 移除事件监听
    remove: function(element, type, callback){

        if(element.removeEventListener){
            element.removeEventListener(type, callback, false);
        } else if(element.detachEvent){
            element.detachEvent(‘on‘ + type, callback);
        } else {
            element[‘on‘ + type] = null;
        }

    },

    //  event 对象
    getEvent: function(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(){

        if(event.stopPropagation){
            event.stopPropagation();
        } else {
            event.cancelBubble = true;
        }
    }

};

 

以上是关于event事件对象的兼容的主要内容,如果未能解决你的问题,请参考以下文章

js事件对象兼容性

event事件对象的兼容

js的event事件对象汇总

javascript 跨浏览器事件对象阻止默认事件阻止冒泡兼容写法

event对象

事件不同浏览器的兼容性问题