1

所以我有一个用 Raphael 绘制的饼图,我正在尝试创建一个工具提示,当我将鼠标悬停在饼图的一段上时显示 Raphael 文本。事件处理程序悬停工作正常,但我无法更改工具提示文本的坐标以匹配光标坐标。请在此处查看代码:

http://jsfiddle.net/p7U2K/1/

我试过了

posx = e.pageX - $(document).scrollLeft() - $('#holder').offset().left;

对于我的 x 坐标,但它会以未定义的形式返回。我究竟做错了什么?

谢谢你的帮助!

4

1 回答 1

2

我可以指出你做错的几件事:

  • e未定义,因为您没有将其传递给.hover回调
  • $也是未定义的,因为您没有在脚本中加载 jquery。但你不需要它。您可以使用e.offsetXwhich 为您提供与父元素的相对位置。您不需要那些滚动偏移:

    posx = e.offsetX;

  • 由于动画功能,您在绘制标签后立即隐藏标签

  • 您正在每个悬停事件中创建一个新标签。这将立即用元素堵塞你的画布(即使你通过隐藏它们opacity)。看看这个看看我的意思:http: //jsfiddle.net/mihaifm/wdzPG/5/
于 2012-04-25T12:16:15.220 回答