黑马程序员技术交流社区

标题: e.target与e.currentTarget的区别 [打印本页]

作者: JoyZhang    时间: 2021-4-11 15:56
标题: e.target与e.currentTarget的区别
先看个例子
[JavaScript] 纯文本查看 复制代码
<body>
    <div id="a">
        <div id="b">
            <div id="c">
                <div id="d"></div>
            </div>
        </div>
    </div>
   
    <script>
        document.getElementById('a').addEventListener('click', function ( e ) {
            console.log('target:' + e.target.id + '¤tTarget:' + e.currentTarget.id);
        });
        document.getElementById('b').addEventListener('click', function ( e ) {
            console.log('target:' + e.target.id + '¤tTarget:' + e.currentTarget.id);
        });
        document.getElementById('c').addEventListener('click', function ( e ) {
            console.log('target:' + e.target.id + '¤tTarget:' + e.currentTarget.id);
        });
        document.getElementById('d').addEventListener('click', function ( e ) {
            console.log('target:' + e.target.id + '¤tTarget:' + e.currentTarget.id);
        });
    </script>
</body>



不必记什么时候e.currentTarget和e.target相等,什么时候不等,理解两者的究竟指向的是谁即可。
给上面代码a注册事件,currentTarget始终指向了a,点击d的时候,target指向了d,current仍然指向a











欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2