1

我正在使用 D3从饼图布局和弧线中开发“径向轮毂和轮辐图”(又名“径向轮”)。我设置了轮子以启用所有带有 HTML 链接的弧线和节点,它们都可以正常工作。我还设置了滚轮以使用鼠标悬停事件来更改弧线和节点的颜色。

问题是当我将鼠标悬停在一个元素上并单击它以转到它所指向的 HTML 页面时,点击浏览器的“返回”按钮以返回 D3 可视化并不会清除鼠标悬停的最后状态。更具体地说,如果我将鼠标悬停在弧上,.on(mouseover...) 事件会调用一个函数来将弧变为深蓝色。然后我单击圆弧以转到它链接到的页面。当我点击浏览器的“返回”按钮返回可视化时,弧线仍然是深蓝色,而不是返回到原来的颜色。

有没有一种简单而干净的方法来解决这个问题?

4

1 回答 1

1

您是否考虑过重置 .on(click) 中的样式?如果您使用 CSS 类来更改颜色,这可能是最简单的。不错的图表,顺便说一句。

更新:我无法使用 Chrome、Firefox 或 Safari 中提供的链接重现此行为。它总是返回到浏览器返回的原始颜色。

于 2012-08-02T19:44:46.570 回答