【发布时间】:2019-01-10 04:18:48
【问题描述】:
我为元素移动创建了一个 SVG 路径。我想以一定的间隔向这条路径添加元素,这样你就会得到一行移动的元素。
问题是当我向它添加一个元素时,它会在第一个元素之上生成。它们相互堆叠,而不是相互移动。看到这个小提琴:
https://jsfiddle.net/rct8m763/7/
如果您检查您的控制台,您会看到每秒都会添加一个新元素:
<svg id="svg-box" width="2100" height="1080">
<image xlink:href="img/trash/11.png" width="125" height="125" class="draggable">
<animateMotion path="M 450 150 L 1400 150 A 50 50 0 1 1 1400 950 L 450 950 A 50 50 0 1 1 450 150" begin="0s" dur="20s" repeatCount="indefinite" rotate="auto"></animateMotion>
</image>
<image xlink:href="img/trash/11.png" width="125" height="125" class="draggable">
<animateMotion path="M 450 150 L 1400 150 A 50 50 0 1 1 1400 950 L 450 950 A 50 50 0 1 1 450 150" begin="0s" dur="20s" repeatCount="indefinite" rotate="auto"></animateMotion>
</image>
<image xlink:href="img/trash/11.png" width="125" height="125" class="draggable">
<animateMotion path="M 450 150 L 1400 150 A 50 50 0 1 1 1400 950 L 450 950 A 50 50 0 1 1 450 150" begin="0s" dur="20s" repeatCount="indefinite" rotate="auto"></animateMotion>
</image>
<image xlink:href="img/trash/11.png" width="125" height="125" class="draggable">
<animateMotion path="M 450 150 L 1400 150 A 50 50 0 1 1 1400 950 L 450 950 A 50 50 0 1 1 450 150" begin="0s" dur="20s" repeatCount="indefinite" rotate="auto"></animateMotion>
</image>
但它们相互堆叠。我如何让他们从一开始就遵循路径,独立于其他元素?
【问题讨论】:
标签: javascript animation svg path