美文网首页
00002.e.target与e.currentTarget

00002.e.target与e.currentTarget

作者: 笑着字太黑 | 来源:发表于2022-02-16 08:27 被阅读0次

html画面元素就好像很多图层一层一层叠加起来的。
比如在一个<p>元素图层上(内),再放置一个<button>图层。
在响应事件是会使用冒泡的方式,比如响应button的点击事件时,它下面的图层(<p>元素图层也会触发点击事件)。

这时最初触发事件的对象就是e.target,两次都是按钮对象。
当前触发事件的绑定对象就是e.currentTarget,先按钮对象后p对象

测试代码:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
</head>
<body>
  <p onclick="pClickHandle(event)">
    <input type="button" onclick="btnClickHandle(event)" value="点击">
  </p>
</body>
<script>
  function btnClickHandle(e){
    console.group('按钮被点击');
    console.log(e.target);
    console.log(e.currentTarget);
    console.groupEnd();
  }
  function pClickHandle(e){
    console.group('P被点击');
    console.log(e.target);
    console.log(e.currentTarget);
    console.groupEnd();
  }
</script>
</html>

测试结果

▼按钮被点击
  ▶<input type="button" onclick="btnClickHandle(event)" value="点击">
  ▶<input type="button" onclick="btnClickHandle(event)" value="点击">
▼P被点击
  ▶<input type="button" onclick="btnClickHandle(event)" value="点击">
 ▶ <p onclick="pClickHandle(event)">

相关文章

网友评论

      本文标题:00002.e.target与e.currentTarget

      本文链接:https://www.haomeiwen.com/subject/jeiklrtx.html