我正在尝试使用画布制作一些东西,我可以在其中传递一个数字,该数字等于0-360的某个度数,并且一条线将从其当前位置到我设置的度数进行动画处理。
现在我已经将线路转到了我想要的任何程度(我还没有完成我传递程度的功能部分......现在只是在 for 循环中进行)所以我的主要问题是我如何得到动画线变慢?如果我只是让 for 循环运行,它就会直接到达终点。我怎样才能减慢它的速度,让它动画起来?
代码在这里:http://jsfiddle.net/WPTjv/2/ http://jsfiddle.net/WPTjv/2/
Thanks!
编辑:我不是特别喜欢这些代码,所以如果您也有更好的方法,我很乐意接受建议。
您需要使用类似 setInterval 的方法每 N 毫秒调用一段代码。语法是:
setInterval(code, milliseconds);
它返回一个您需要保存的数字,以便您可以停止代码。所以我们可以写:
var interval = setInterval(function() {
clock();
x++;
if (x > 90) clearInterval(interval);
}, 30);
这将创建一个每 30 毫秒发生一次的函数。
每 30 毫秒,clock()
叫做,x
递增,并且如果x
超过90我们称之为clearInterval
并传入我们呼叫的号码setInterval
回。这可确保代码打开总共发生 90 次。
这是一个活生生的例子:
http://jsfiddle.net/WPTjv/10/ http://jsfiddle.net/WPTjv/10/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)