4

这是一个非常具体且有些复杂的问题,因此我设置了一个最小的测试用例,您可能应该在阅读其余部分之前看到它。

我的页面通过Raphaël显示带有突出显示区域的图像。我也一直在努力为这些悬停添加Tipsy 工具提示,这样你就可以看到图像的每个部分被称为什么。

Raphaël 使用 SVG 绘制突出显示的区域,并且由于 SVG 元素也是 DOM 节点,因此将 Tipsy 附加到它们上很容易完成,如下所示:

// Get the path node as a jQuery object.
pathNode = $(path.node);

// Set the title so it's available to tipsy.
pathNode.attr('title', element.title);

// Add a Tipsy tooltip to each node, if Tipsy is loaded.
if ($.fn.tipsy) {
  pathNode.tipsy({
    fade: true
  });
}

这个问题美中不足,这个问题的原因是Tipsy在屏幕顶部(坐标0,0)而不是SVG节点旁边绘制工具提示,我不知道如何修理它。在调试 Tipsy JavaScript 时,它似乎在某个点上有坐标,但仍然无法在正确的位置绘制。

任何人都可以弄清楚吗?(有关详细信息,请参阅最小测试用例)。

4

2 回答 2

2

也许尝试使用gRaphaël来获得这些提示。

看看我刚刚写的这个例子:http: //jsfiddle.net/3tHmp/

于 2011-02-19T17:08:23.013 回答
0

您的演示还在 iPhone 上的 0,0 处显示工具提示。随着棋子变红,您可以通过使用 getBBox() 来识别 min x 和 min y 相应地放置提示?

于 2011-02-20T04:51:27.413 回答