事件监听的相关兼容性

来源:互联网 发布:妙味云课堂js视频下载 编辑:程序博客网 时间:2024/04/20 08:18
//事件监听的兼容性写法var addEvent=function(elements,type,callback){    if(elements.addEventListener){        elements.addEventListener(elements,type,false)    }else if(elements.attachEvent){        elements.attachEvent("on"+type,callback)    };};
//事件移除的兼容性写法var removeEvent=function(elements,type,callback){    if(elements.removeEventListener){        elements.removeEventListener(elements,type,false)    }else if(elements.detach){        elements.detach("on"+type,callback)    };};
//获取事件源的兼容性写法var getEvent=function(event){    event = event || window.event;    return event.target || event.srcElement;};
//阻止事件冒泡的兼容性写法var stopPropagation = function(event){    if(event.stopPropagation){        event.stopPropagation();    }else{        event.cancelBubble = true;    }};
//阻止默认事件的兼容性写法var preventDefault = function(){    if(event.preventDefault){        event.preventDefault();    }else{        event.returnValue = false;    }};
//通用事件监听对象var Event = {    addEvent: function(element,type,callback){        if(element.addEventListener){            element.addEventListener(type,callback,false);        }else if(element.attachEvent){            element.attachEvent('on' + type,callback);        }    },    removeEvent: function(element,type,callback){        if(element.removeEventListener){            element.removeEventListener(type,callback,false);        }else{            element.detachEvent('on' + type, callback);        }    },    getEvent: function(event){        return event || window.event;    },    getTarget: function(event){        return event.target || event.srcElement;    },    stopPropagation: function(event){        if(event.stopPropagation){            event.stopPropagation();        }else{            event.cancelBubble = true;        }    },    preventDefault: function(event){        if(event.preventDefault){            event.preventDefault();        }else{            event.returnValue = false;        }    }}
0 0