`player.animate( [ {变换:"rotate(10)"`?
`player.animate( [ {transform: "rotate(10)"`?
我正在尝试使用 web animation/JS(但不是 CSS!)来转换 SVG。
我无法让transform: rotate(10)
工作——不知道为什么。
示例中playerT
(scale)和playerT3
(strokeWidth)都可以,但是 playerT2
好像不行什么——为什么?
<svg width="400" height="400" style="border:1px solid #00f">
<path id="triangle" d="M0,0L30,30L50,10z" stroke="#f00" stroke-width="3" />
<script type="text/ecmascript">
<![CDATA[
var triangle=document.getElementById("triangle");
var playerT=triangle.animate(
[{transform: 'scale(1)'},
{transform: 'scale(5)'}],
{duration:1000, delay:0,iterations: Infinity});
var playerT2=triangle.animate(
[{transform: 'rotate(10)'},
{transform: 'rotate(20)'}],
{duration:1000, delay:0,iterations: Infinity});
var playerT3=triangle.animate(
[{strokeWidth:3},
{strokeWidth:0}],
{duration:1000, delay:0,iterations: Infinity});
]]>
</script>
</svg>
JSFiddle 在这里:
https://jsfiddle.net/45cbhLqL/
PS:我可以改用变换矩阵吗(如果必须的话)?
您必须在旋转函数中指定单位(度、弧度等)
您的代码现在可以运行了:https://jsfiddle.net/45cbhLqL/1/
var playerT=triangle.animate(
[{transform: 'rotate(10deg)'},
{transform: 'rotate(20deg)'}],
{duration:1000, delay:0,iterations: Infinity});
我正在尝试使用 web animation/JS(但不是 CSS!)来转换 SVG。
我无法让transform: rotate(10)
工作——不知道为什么。
示例中playerT
(scale)和playerT3
(strokeWidth)都可以,但是 playerT2
好像不行什么——为什么?
<svg width="400" height="400" style="border:1px solid #00f">
<path id="triangle" d="M0,0L30,30L50,10z" stroke="#f00" stroke-width="3" />
<script type="text/ecmascript">
<![CDATA[
var triangle=document.getElementById("triangle");
var playerT=triangle.animate(
[{transform: 'scale(1)'},
{transform: 'scale(5)'}],
{duration:1000, delay:0,iterations: Infinity});
var playerT2=triangle.animate(
[{transform: 'rotate(10)'},
{transform: 'rotate(20)'}],
{duration:1000, delay:0,iterations: Infinity});
var playerT3=triangle.animate(
[{strokeWidth:3},
{strokeWidth:0}],
{duration:1000, delay:0,iterations: Infinity});
]]>
</script>
</svg>
JSFiddle 在这里: https://jsfiddle.net/45cbhLqL/
PS:我可以改用变换矩阵吗(如果必须的话)?
您必须在旋转函数中指定单位(度、弧度等) 您的代码现在可以运行了:https://jsfiddle.net/45cbhLqL/1/
var playerT=triangle.animate(
[{transform: 'rotate(10deg)'},
{transform: 'rotate(20deg)'}],
{duration:1000, delay:0,iterations: Infinity});