JS之注册事件兼容性问题

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>

        window.onload = function () {
            // 处理注册事件的兼容性问题
            function addEventListener(ele, eventName, fn) {
                // 判断当前浏览器是否支持addEventListener
                if (ele.addEventListener) {
                    ele.addEventListener(eventName, fn); // 第三个参数默认为false
                } else if(ele.attachEvent) {
                    ele.attachEvent('on'+eventName, fn);
                } else {
                    // 等价于ele.onclick = fn;
                    ele['on' + eventName] = fn;
                }
            }

            var btn = document.getElementById('btn');
            addEventListener(btn, 'click', function () {
                alert('你好');
            })
        }
    </script>
</head>
<body>
<input type="button" value="点击" id="btn">
</body>
</html>
原文地址:https://www.cnblogs.com/ella-li/p/14553585.html