我正在开发一个 DOM 检查器书签。我需要用户能够点击页面中的任何内容,因此我必须使用通用选择器 (*) 来附加点击事件。但是,当通过此选择器单击一个项目时,我会返回所选项目以及每个父项。我如何只获得选定的项目以便我可以使用它?
$(document).on("click", "*", function() {
alert(this);
});
我正在开发一个 DOM 检查器书签。我需要用户能够点击页面中的任何内容,因此我必须使用通用选择器 (*) 来附加点击事件。但是,当通过此选择器单击一个项目时,我会返回所选项目以及每个父项。我如何只获得选定的项目以便我可以使用它?
$(document).on("click", "*", function() {
alert(this);
});
$(document).on("click", "*", function(event) {
event.stopPropagation();
});
“我需要用户能够点击页面中的任何内容,因此我必须使用通用选择器 (*) 来附加点击事件。”
您不需要通用选择器,实际上您根本不需要第二个参数来指定选择器。当文档接收到点击事件时,它可以使用event.target
属性确定事件从哪个元素开始:
$(document).on("click", function(event) {
// event.target is the element you care about
alert(event.target.id); // or whatever
...
});