码迷,mamicode.com
首页 > Web开发 > 详细

js 添加事件兼容性

时间:2018-02-04 12:36:37      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:添加   ati   val   stop   and   too   cli   tool   prevent   

        var tools = {
            //添加事件
            addHandle: function (e, type, handle) {
                if (e.addEventListener) {
                    e.addEventListener(type, handle, false);
                } else if (e.attachEvent) {
                    e.attachEvent("on" + type, handle);
                }
                else {
                    e["on" + type] = handle;
                }
            },
            //删除事件
            removeHandle: function (e, type, handle) {
                if (e.addEventListener) {
                    e.removeEventListener(type, handle, false);
                } else if (e.attachEvent) {
                    e.detachEvent("on" + type, handle);
                }
                else {
                    e["on" + type] = null;
                }
            },
            //得到对象
            getEvent: function (event) {
                return event || window.event;
            },
            //得到元素
            getElement: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;
                }
            }
        }

        var btn = document.getElementById("btn");
        var box = document.getElementById("box");
        var ha = document.getElementById("ha");

        tools.addHandle(ha, "click", function (e) {
            e = tools.getEvent(e);
            tools.preventDefault(e);
            tools.stopPropagation(e);
        })

 

js 添加事件兼容性

标签:添加   ati   val   stop   and   too   cli   tool   prevent   

原文地址:https://www.cnblogs.com/lunawzh/p/8412674.html

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