jquery - 使用jquery一次性获取真实点击的元素标签名称

标签 jquery click

我希望我的点击函数对所有元素运行,并且我想获取被点击的元素标签名称。

例如,对于这样的页面,

<html>
<body>
  <form>
   <div>
     <input type="text">
     <textarea></textarea>
   </div>
  </form>
</body>
</html>

如果我运行这个js代码

$("*").live('click',function(evt) {
    alert(evt.target.tagName);      
});

然后点击文本区域,它会提醒“TEXTAREA”5次,因为它有4个父项。

修复哪里?

最佳答案

使用jQuery's stopPropagation() method :

$("*").live('click',function(evt) {
    evt.stopPropagation();
    alert(evt.target.tagName);      
})

JSFiddle demo .

关于jquery - 使用jquery一次性获取真实点击的元素标签名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21852975/

相关文章:

javascript - 移动菜单 Accordion 逻辑

jquery - 为什么 .attr ('checked' ,'checked' ) 不会设置?

c++ - 使用 C++/Visual C++ 控制光标和键盘

jquery - JavaScript/Jquery : replace click with on

c# - 模拟点击进入隐藏窗口

javascript - 是否可以使用从 .onclick 事件函数获得的变量,并在所述事件之外、代码的另一部分中使用它?

javascript - 仅在一个元素内覆盖滚动功能

javascript - Firefox keydown退格问题

jquery - shinyjqui::orderInput 中的最大项目

jquery - 使用 Capybara、Selenium、JS 测试 Control+Click