Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.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定义动画图像中的循环数_Javascript_Css_Animated - Fatal编程技术网

如何使用Javascript定义动画图像中的循环数

如何使用Javascript定义动画图像中的循环数,javascript,css,animated,Javascript,Css,Animated,我特别感谢你剪了这个。 是否有可能定义和应用所需的循环次数?正如我们所看到的,代码将重复序列 onload=函数startAnimation{ var frames=document.getElementByIdanimation.children; var frameCount=frames.length; var i=0; setIntervalfunction{ 帧[i%frameCount].style.display=none; 帧[++i%frameCount].style.dis

我特别感谢你剪了这个。 是否有可能定义和应用所需的循环次数?正如我们所看到的,代码将重复序列

onload=函数startAnimation{ var frames=document.getElementByIdanimation.children; var frameCount=frames.length; var i=0; setIntervalfunction{ 帧[i%frameCount].style.display=none; 帧[++i%frameCount].style.display=block; }, 100; } 动画img{ 显示:无; } 动画img:第一个孩子{ 显示:块; }
您可以这样做,在间隔运行一定次数后清除间隔:

onload = function startAnimation() { 
    var frames = document.getElementById("animation").children;
    var frameCount = frames.length;
    var i = 0;
    var numberOfCycles = 10; // Set this to whatever you want
    var myInterval = setInterval(function () { 
        frames[i % frameCount].style.display = "none";
        frames[++i % frameCount].style.display = "block";
        if (i === numberOfCycles * frameCount) {
            clearInterval(myInterval);
        }
    }, 100); 
} 
这需要最少的代码变异,但您也可以使用setTimeout进行类似的操作

此处的代码片段:

onload=函数startAnimation{ var frames=document.getElementByIdanimation.children; var frameCount=frames.length; var i=0; var numberOfCycles=3;//将其设置为您想要的任何值 var myInterval=setIntervalfunction{ 帧[i%frameCount].style.display=none; 帧[++i%frameCount].style.display=block; 如果i==numberOfCycles*frameCount{ 间隔时间; } }, 100; } 动画img{ 显示:无; } 动画img:第一个孩子{ 显示:块; }
试着问一些更具体的问题。谢谢你的建议;关于编码方面的东西,我不是为了成为一名程序员,也许是为了利用这些技能赚钱,而在高水平上寻求学习;我正在寻找一些答案,试图在我感兴趣的领域继续前进,仅此而已。很抱歉-1将SO转换为codeforme服务。@YuryTarabanko我明白你的意思,但我认为解决方案足够简单,但对初学者来说不够模糊。从OP的个人资料中,我是一个试图学习的noob。他不会以这种方式学习任何东西:@YuryTarabanko希望这个对话对他学习有所帮助。但我一定会记住你说过的话,不管这些答案有多简单。谢谢提醒:@typo_78如果这是正确的答案,请将其标记为正确?谢谢: