鼠标悬停时获取任何标记的ID

oim*_*oim 4 html javascript dom

有谁知道当鼠标结束时我怎么能得到任何元素的id?

我想在鼠标结束的元素(标签)上显示一个div(框).我无法修改标签以包含一个mousover事件.我想要一个全局回调或类似的东西,以获得鼠标指针下的标记的id.

谢谢 !

kar*_*m79 9

你的意思是你想要的目标的的onmouseover事件,这样你就可以访问该元素的属性:

<script>
document.onmouseover = function(e) {
    console.log(e.target.id);
}
</script>
Run Code Online (Sandbox Code Playgroud)

查看事件属性以获得目标的跨浏览器方式(以下示例来自上述网站):

function doSomething(e) {
    var targ;
    if (!e) var e = window.event;
    if (e.target) targ = e.target;
    else if (e.srcElement) targ = e.srcElement;
    if (targ.nodeType == 3) // defeat Safari bug
        targ = targ.parentNode;
}
Run Code Online (Sandbox Code Playgroud)

所以把它们放在一起:

document.onmouseover = function(e) {
    var targ;
    if (!e) var e = window.event;
    if (e.target) targ = e.target;
    else if (e.srcElement) targ = e.srcElement;
    if (targ.nodeType == 3) // defeat Safari bug
        targ = targ.parentNode;
    console.log(targ.id);
}
Run Code Online (Sandbox Code Playgroud)