虽然我找到了这个问题的变种,但仍未找到解决问题的方法。为了简洁起见,我具有以下结构...
<svg>
<g>
<rect></rect>
<rect></rect>
<rect></rect>
</g>
</svg>
通过在组中的rect元素下方添加use元素,可以为这些rect元素设置动画。但是,如果我尝试动态创建带有动画规则的use元素以在rect元素之后和组内插入,则动画不会发生。
在Chrome开发工具中进行检查时,我可以看到动态创建的元素在那里,但是动画没有发生。
我已经在FF和Chrome中进行了测试,但均无法正常工作。
我已经读到这可能是一个Chrome错误,但是我读到的大多数线程都比较旧,并且不确定是否已经找到解决方案。
创建元素时,我正在使用createElementNS。我尝试添加FakeSmile库,即使这似乎是IE特定的。
我只使用JavaScript,没有jQuery。
如果我不清楚,请按以下步骤操作:http : //codepen.io/JoeyCinAZ/pen/Hstkr,以下是无效示例:http : //codepen.io/JoeyCinAZ/pen/GHhbw
<use>
需要使用createElementNS在SVG名称空间中创建元素时,可以使用createElement创建元素。
另外,当必须使用setAttributeNS在xlink名称空间中设置xlink属性时,您尝试使用setAttribute设置xlink属性。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句