当浏览器最小化时,d3.js transition()不起作用

时间:2012-12-06 09:04:18

标签: javascript d3.js

转换() 选项,用于在新数据进入时移动 svg 元素的位置,在浏览器窗口时效果很好已打开,但当我打开另一个标签或最小化窗口时, 过渡() 功能将 svg 元素堆叠在一起。当我打开窗户时,我看到彼此叠加 svg 元素。

然后 exit() 选项移出屏幕。

1 个答案:

答案 0 :(得分:18)

D3 uses requestAnimationFrame以实现流畅有效的绘图。这是关于该主题的more info

许多人的基本问题是,当窗口/标签位于后台时,页面呈现“进入睡眠模式”并且没有提供“动画帧”,即浏览器将停止绘制。

您可以使用浏览器visibility API来控制您的绘图(例如,当页面再次可见时,对图表执行完整更新)来解决该“问题”。 有关示例,请参阅related MDN page