1

我正在尝试找到一种方法来获取当前悬停元素的元素 id 以显示弹出框/工具提示。目前我正在使用 clientX / clientY 来获取坐标,但我真的希望弹出窗口以我悬停的元素为中心。

有没有办法获取这些信息,例如“谁调用了 show_tooltip”或类似的方式来获取元素的坐标。希望这是有道理的。

针对下面的评论,这就是我目前正在使用的。

function show_tooltip(evt) {
    var x = evt.clientX -50;
    var y = evt.clientY -70;

    tooltip.setAttributeNS( null, "transform", "translate(" + x + "," + y + ")" );
    tooltip.setAttributeNS( null, "opacity", "0.7" );
}

这样做的问题是鼠标指针用于坐标。虽然我可以使用getElementById()来获取一个元素,但我不知道哪个元素调用了该函数。

4

3 回答 3

1

我不知道这是不是你要找的:

<div onmouseover="show_tooltip(this)"/>

您将在 js 函数中获得触发事件的元素。

于 2012-04-23T15:48:04.257 回答
0

也许你可以看看http://docs.jquery.com/Plugins/Tooltip (演示)。这类插件已经开发了很多次。这只是一个例子。

于 2012-04-23T14:46:42.273 回答
0

Event.target(在您的脚本中evt.target)包含事件的目标(通常是一个元素)。

于 2012-04-24T13:07:37.583 回答