事件练习:封装兼容性添加、删除事件的函数(实录 四)

http://www.fgm.cc/learn/lesson4/08.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>事件练习:封装兼容性添加、删除事件的函数</title>
    <style>
  
    
    span {
        color: #999;
    }
    </style>
    
</head>

<body>
    <div id="container">
        <button id="useless-btn">毫无用处的按钮</button>
        <button id="add-btn">绑定click事件</button>
        <button id="remove-btn">解除绑定</button>
    </div>
    <script type="text/javascript">
        var uselessBtn = document.getElementById('useless-btn');
        var addBtn = document.getElementById('add-btn');
        var removeBtn = document.getElementById('remove-btn');

        var EventUtil = {
            addHandler: function (element, eventType, handler) {
                if (element.addEventListener) {
                    element.addEventListener(eventType, handler, false);
                } else if (element.attachEvent) { // IE<=8
                    element.attachEvent('on' + eventType, handler);
                } else { // DOM0
                    element['on' + eventType] = handler;
                }
            },

            removeHandler: function (element, eventType, handler) {
                if (element.removeEventListener) {
                    element.removeEventListener(eventType, handler, false);
                } else if (element.detachEvent) { // IE<=8
                    element.detachEvent('on' + eventType, handler);
                } else { // DOM0
                    element['on' + eventType] = null;
                }
            }
        };

        function show() {
            alert('事件绑定成功');
        };

        EventUtil.addHandler(addBtn, 'click', function () {
            EventUtil.addHandler(uselessBtn, 'click', show);
            uselessBtn.innerHTML = '我可以点击了';
        });

        EventUtil.addHandler(removeBtn, 'click', function () {
            EventUtil.removeHandler(uselessBtn, 'click', show);
            uselessBtn.innerHTML = '毫无用处的按钮';
        });
    </script>
</body>

</html>

转载于:https://my.oschina.net/u/3427060/blog/1335226

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值