首页 > 其他 > 详细

跨浏览器事件封装

时间:2018-05-18 11:02:48      阅读:235      评论:0      收藏:0      [点我收藏+]
var EventUtil = {
        // 添加事件处理程序
        addHandler: function (element,type,handler) {
            if (element.addEventListener){
                element.addEventListener(type,handler,false);
            } else if (element.attachEvent) {
                element.attachEvent("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){
            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(event){
            if (event.stopPropagation){
                event.stopPropagation();
            } else {
                event.cancelBubble = true;
            }
        }
    };

 

跨浏览器事件封装

原文:https://www.cnblogs.com/vscss/p/9054866.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!