javascript事件学习(4)-跨浏览器的事件对象

var EventUtil = {
    addHandler: function(element, type, handler) {
        element.addEventListener ? element.addEventListener(type, handler, false) : element.attachEvent('on' + type, handler);
        //为事件对象添加监听函数
    },

    getEvent: function(event) {
        return event ? event : window.event;
        // 返回对event对象的引用
    },

    getTarget: function(event) {
        return event.target || event.srcElement;
        // 返回事件的目标
    },

    preventDefault: function(event) {
        event.preventDefault ? event.preventDefault() : event.returnValue = false;
        // 取消事件的默认行为
    },

    removeHandler: function(element, type, handler) {
        element.removeEventListener ? element.removeEventListener(type, handler, false) : element.detachEvent('on' + type, handler);
        //为事件对象移除监听函数
    },

    stopPropagation: function(event) {
        event.stopPropagation ? event.stopPropagation() : event.cancelBubble = true;
        // 阻止事件冒泡
    }
};

 

posted @ 2015-12-23 16:19  yannanyan  阅读(141)  评论(0编辑  收藏  举报