0

如标题所述,我现在正在尝试使用 Google 可视化创建图表:带注释的时间线。它非常易于使用,文档也很容易理解。您可以在此处找到文档。

我遇到了一个关于图表的 wmode 的问题,它是一个 flash 对象。图表的 wmode 的默认值为“window”,它将始终覆盖同一页面中的所有 HTML 对象。这很烦人,因为即使是 jquery block() 方法也不起作用。

当我将图表的 wmode 更改为“不透明”或“透明”时,图表不会覆盖具有更高 z-index 的 HTML 对象,但它无法识别鼠标滚动事件。它仍然捕捉到鼠标点击事件。

我在以下浏览器中尝试过:

  • Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12 (.NET CLR 3.5.30729)
  • Opera/9.80 (Windows NT 5.2; U; en) Presto/2.7.62 版本/11.00
  • Safari 4.0.5 (531.22.7)
  • 即 7.0.5730.13

只有 IE 甚至可以捕捉到鼠标滚动,其他人无法识别它。有人遇到和我一样的问题吗?还是有人没有遇到这个问题?

我一直在互联网上寻找解决方案,但没有任何解决方案适合我。任何解决方案(或解决方法)将不胜感激。

非常感谢。

4

1 回答 1

0

由于似乎没有人有解决方案,我决定回答我自己的问题,以防有人遇到与我相同的问题,:) 好吧,我实际上还不知道解决方案,但我找到了解决方法。:p

首先,我将图表的 wmode 设置为“不透明”。然后,根据jpea的建议,我使用 javascript 鼠标滚轮事件侦听器来处理图表所在的 div 元素中的鼠标滚轮事件。然后使用从事件中获得的增量值使用 setVisibleChartRange() 方法更改图表的可见范围。

请参阅此处了解如何在不同浏览器中使用鼠标滚轮事件。

我希望这个答案有用,:D

Note: If you sure the chart would not be overlapped by any objects by any chance, then you don't need to do anything about the wmode.

于 2011-01-19T10:48:39.810 回答