我将 SVG 设置为元素的背景图像。第一次显示元素时,动画会正确播放。
在随后的显示中(例如,如果通过 JavaScript 注入元素的副本,或者如果背景图像被删除并使用 CSS/JavaScript 添加回来),动画不会从头开始。我认为这是预期的功能,因为图像不被认为已被浏览器重新加载 - 它使用已经动画的内存版本。
这是一个演示(不是我的): http ://www.luigifab.info/public/svg-smil/test.html
Firefox和Chrome有一些相关的浏览器错误报告,但如上所述,我认为这是预期的功能。
有什么方法可以让我的 SVG 动画在图像显示时重置/重播?
理想情况下,我正在寻找仅使用 CSS 和 SVG 的解决方案 - 如果不可能,则使用 JavaScript 解决方案。