码迷,mamicode.com
首页 > 其他好文 > 详细

通用事件对象(跨浏览器)

时间:2017-05-22 18:57:43      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:字符编码   表示   default   需要   and   number   logs   数值   getc   

var EventUtil = {
        addHander: function(element, type, handler) {
            if (element.addEventListener) {
                element.addEventListener(type, handler, false)
            } else if (element.attchEvent) {
                element.attchEvent(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) { //使用这个方法跨浏览器取得event对象
            return event ? event : window.event;
        },
        getTarget: function(event) { //返回事件的实际目标
            return event.target || event.srcElement;
        },
        stopBubble: function stopBubble(event) {
            // 如果提供了事件对象,则这是一个非IE浏览器
            if (event && event.stopPropagation) {
                // 因此它支持W3C的stopPropagation()方法 
                event.stopPropagation();
            } else {
                // 否则,我们需要使用IE的方式来取消事件冒泡
                window.event.cancelBubble = true;
            }
        },
        stopDefault: function(event) {
            // 阻止默认浏览器动作(W3C)
            if (event && event.preventDefault) {
                event.preventDefault();
            } else {
                // IE中阻止函数器默认动作的方式
                window.event.returnValue = false;
            }
            return false;
        },
        getWheelDelta: function(event) { //获取表示鼠标滚轮滚动方向的数值
            if (event.wheelDelta) {
                return event.wheelDelta;
            } else {
                return -event.detail * 40;
            }
        },
        getCharCode: function(event) { //以跨浏览器取得相同的字符编码,需在keypress事件中使用
            if (typeof event.charCode == "number") {
                return event.charCode;
            } else {
                return event.keyCode;
            }
        }
    };

 

通用事件对象(跨浏览器)

标签:字符编码   表示   default   需要   and   number   logs   数值   getc   

原文地址:http://www.cnblogs.com/happyhaibei/p/6890755.html

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