Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/408.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在单击时获取任何元素的id_Javascript_Jquery - Fatal编程技术网

Javascript 如何在单击时获取任何元素的id

Javascript 如何在单击时获取任何元素的id,javascript,jquery,Javascript,Jquery,当点击页面上的任何元素时,是否可能弹出一个警报,告诉您该元素的标记名(或id或任何其他信息)? 我基本上希望为每个元素设置以下内容: $('#wrapper').click(function() { alert($(this).prop('tagName')); }) 除了我不想为页面上的每个元素编写代码,因为这将花费很长时间,而且在各个方面都非常不切实际。使用选择器将侦听器绑定到全局对象上 $(document).on('click', '*', fu

当点击页面上的任何元素时,是否可能弹出一个警报,告诉您该元素的标记名(或id或任何其他信息)? 我基本上希望为每个元素设置以下内容:

$('#wrapper').click(function() {
            alert($(this).prop('tagName'));
        })

除了我不想为页面上的每个元素编写代码,因为这将花费很长时间,而且在各个方面都非常不切实际。

使用选择器将侦听器绑定到全局对象上

$(document).on('click', '*', function() {
  alert($(this).prop('tagName'));
});
应该行。

这个怎么样

document.body.addEventListener("click", function (e) {
       e = e || window.event;
       alert(e.toElement.getAttribute("id"));
});
$(document).on('click', '*', function() {
    // Set clicked element's id to variable
    var elementName = $(this).attr('id');
    // Alert displaying id of clicked element
    alert(elementName);
})

下面是一个纯javascript方法:

document.onclick = function(e) {
        e = e || window.event;
        var o = e.srcElement||e.target;
        alert(o.id);
    }

当我投反对票时,你的答案是:<代码>$('*')。点击(…)。现在我将删除它,因为它更理智:)事实上,出于某种原因,它不会让我删除它。说它被“锁定”,抱歉。当时它的措辞是作为一个完整的答案(我真的不明白
$('*'))。单击(…);
$(文档)的部分键入版本。在('click','*',…);
)上,但这不是我想的重点…看起来如果你再做一次编辑,我就可以删除我的投票了。为什么你要包括第二个参数?应该没有理由指定
“*”
。任何单击都会跳转到
文档
@lan如果您没有指定它,您只会听到对元素本身的单击(然后您可以使用事件变量访问标记名)。在这里,我直接听到所有后代的点击声。这根本不是真的。任何发生在它内部的点击都会冒出气泡。您使用
document
这一事实意味着它正在处理父most元素,因此也就是页面上的每个元素。例如,当您单击一个
时,它会弹出气泡,每个祖先都会捕捉到该事件。您只是在为jQuery添加额外的工作