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 2022-03-10 14:37  马丁的车夫  阅读(103)  评论(0编辑  收藏  举报