前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JS示例35-事件绑定方式二

JS示例35-事件绑定方式二

作者头像
专注APP开发
发布2019-11-07 16:30:56
3.1K0
发布2019-11-07 16:30:56
举报
文章被收录于专栏:移动大前端移动大前端

一、知识要点

可以重复绑定相同事件,避免事件被覆盖

二、源码参考

代码语言:javascript
复制
<!DOCTYPE html>
<html>

    <head>
        <meta charset="utf-8" />
        <title></title>
        <script type="text/javascript">
            window.onload = function() {
                var btn1 = document.getElementById('btn1');
                var btn2 = document.getElementById('btn2');

                // 绑定方式一
                btn1.onclick = function() {
                    alert('绑定方式一~onclick')
                }
                // 绑定方式二
                if(btn2.attachEvent) {
                    btn2.attachEvent('onclick', function() {
                    alert('绑定方式二~attachEvent');
                    })
                } else {
                    btn2.addEventListener('click', function() {
                        alert('绑定方式二~addEventListener');
                    }, false)
                }
            }
        </script>
    </head>

    <body>
        <input type="button" name="btn1" id="btn1" value="点击1" />
        <input type="button" name="btn2" id="btn2" value="点击2" />
    </body>

</html>
封装
代码语言:javascript
复制
<!DOCTYPE HTML>
<html>

<head>
    <meta charset="utf-8">
    <title>无标题文档</title>
    <script>
        // 封装成通用方法
        function myAddEvent(obj, ev, fn) {
            if (obj.attachEvent) {
                obj.attachEvent('on' + ev, fn); // IE onclick
            } else {
                obj.addEventListener(ev, fn, false); // 非IE click
            }
        }

        window.onload = function () {
            var oBtn = document.getElementById('btn1');

            myAddEvent(oBtn, 'click', function () {
                alert('a');
            });

            myAddEvent(oBtn, 'click', function () {
                alert('b');
            });
        };
    </script>
</head>

<body>
    <input id="btn1" type="button" value="按钮" />
</body>

</html>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、知识要点
  • 二、源码参考
    • 封装
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档