我想获取有关当前点击的html
元素的信息。为此,我使用了$(*).click()
事件,以便页面上的每个元素都有此事件。
假设我有以下html
代码
<div class="outer">
<div class="inner">
<p>Hello<p>
</div>
</div>
现在,当用户单击hello时,我想获取该元素,以便我可以识别其标记,类等。
但问题是,当用户点击hello时,click事件被触发但是它被激活在p标签上,然后是div class = inner,然后是div,class为outer。但在这里,我只想在用户点击的文本或区域上获取事件。
答案 0 :(得分:4)
请使用$(document).click()
代替$(*).click()
并使用e.target
来指定。
元件。
您可以使用e.stopPropagation();
$(document).click(function (e) {
e.stopPropagation();
alert('Tag Name: ' + e.target.tagName +
' --has class: ' + e.target.className +
' --with text: ' + $(e.target).text());
});