在 jQuery 中如何获取触发事件的元素的 ID

有一个简单的方法用于获取触发事件的元素的 ID。

event.target 属性旨在获取在 jQuery 中触发事件的元素的 ID:

<!DOCTYPE html>
<html>
  <head>
    <title>文档的标题</title>
    <style>
      div,p,span {
        padding: 30px;
        display: block;
        border: 3px solid green;
      }
    </style>
    <script src="https://code.jquery.com/jquery-3.5.0.min.js"></script>
  </head>
  <body>
    <div id="divId">
      <p id="pId">
        <span id="spanId">Click anywhere.</span>
      </p>
    </div>
    <script>
      $(document).ready(function() {
          $(document).click(function(event) {
              alert("Clicked: " + event.target.nodeName + ", id: " + event.target.id);
            });
        });
    </script>
  </body>
</html>

“this”关键字也可以使用,但是,它不是 jQuery 对象,因此要在其上使用 jQuery 函数,我们必须将其引用为 $(this):

$(document).ready(function () {
  $("a").click(function (event) {
    //this.append will not work
    $(this).append("Click");
  });
});

target 属性是对调度事件的对象的引用。
将 event.target 与 this 进行比较以确定事件是否由于事件冒泡而被处理通常很有用。
此关键字指的是正在执行当前 JavaScript 代码位的对象。

日期:2020-06-02 22:16:20 来源:oir作者:oir