JS 元素绑定事件 兼容主流浏览器+IE

获取一个元素并且绑定点击事件或者,鼠标事件等其他事件,绑定事件共有3种方式,并且都有兼容性问题,

下面主要是集合3种方式进行封装以便自动兼容达到最好。

复制代码
    // elem 绑定的目标dom对象 ,type 绑定事件类型 ,handle回调函数
    function addEvent(elem, type, handle) {
        if (elem.addEventListener) { // 主流浏览器 + ie9以上
            elem.addEventListener(type, handle, false)
        } else if (elem.attachEvent) { // 兼容ie
            elem.attachEvent('on' + type, function() {
                handle.call(elem)
            })
        } else { // 以上都不兼容 使用最后方案
            elem['on' + type] = handle
        }
    };
    var div = document.getElementById('div');
    addEvent(div, 'click', function(e) {
        console.log(e, '我被触发了')
    });
复制代码

 

我是马丁欢迎转发和收藏!

 

posted on   马丁的车夫  阅读(131)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示