Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用setInterval()制作动画?_Javascript - Fatal编程技术网

Javascript 如何使用setInterval()制作动画?

Javascript 如何使用setInterval()制作动画?,javascript,Javascript,我有一个10张图片的滑块。切换没有动画的图片。我需要用动画实现图片的平滑过渡。没有CSS转换,使用setInterval()谢谢 下面是一个如何设置html元素不透明度动画的示例: var o=1.0;//开始不透明度 var d=false;//方向。假=减少,真=增加 var s=0.02;//步 函数anim() { 如果(d==false) { o-=s; 如果(o1.0) { o=1.0; d=假; } } document.getElementById(“pic”).style.o

我有一个10张图片的滑块。切换没有动画的图片。我需要用动画实现图片的平滑过渡。没有
CSS转换
,使用
setInterval()
谢谢

下面是一个如何设置html元素不透明度动画的示例:

var o=1.0;//开始不透明度
var d=false;//方向。假=减少,真=增加
var s=0.02;//步
函数anim()
{
如果(d==false)
{
o-=s;
如果(o<0.0)
{
o=0.0;
d=正确;
}
}
其他的
{
o+=s;
如果(o>1.0)
{
o=1.0;
d=假;
}
}
document.getElementById(“pic”).style.opacity=o;
}
设置间隔(动画,1000/60);//每秒60帧。

Picture
您考虑过使用类似jQuery的东西吗?它附带了
.animate()
等函数,让您可以制作所需的动画。还有其他javascript库添加了类似的功能。
看看这里:,

为什么不能使用CSS的
转换?无论如何,您可以使用
setAnimationFrame
,这比
setInterval
更好地用于动画。我学习javascript,我想尝试一下。关于
不知道setInterval是否支持浮动
。在JavaScript中,
Number
是一个双精度64位浮点数,而
Math.round
仍然返回浮点数。因此,您不需要使用
Math.round
,除非您确实想进行舍入。对于整数,您需要使用
BigInt
,但是
BigInt
确实是新的,并且还不是每个浏览器都支持。