Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.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 动画编号需要在60秒内停止_Javascript_Jquery_Html_Jquery Animate - Fatal编程技术网

Javascript 动画编号需要在60秒内停止

Javascript 动画编号需要在60秒内停止,javascript,jquery,html,jquery-animate,Javascript,Jquery,Html,Jquery Animate,数字从开始(1000)到结束(10000)设置动画。但是我希望这个动画在一些预定义的时间内停止,比如60秒结束值可以很大,即23600191,但此动画需要在60秒内停止 <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 函数myCalculator(){ $(“.container2”).show(); var启动=1000; var端=

数字从开始(1000)结束(10000)设置动画。但是我希望这个动画在一些预定义的时间内停止,比如60秒结束值可以很大,即23600191,但此动画需要在60秒内停止

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

函数myCalculator(){
$(“.container2”).show();
var启动=1000;
var端=10000;
var持续时间=2000年;
animateValue(“值”、开始、结束、持续时间);
}
函数animateValue(id、开始、结束、持续时间){
var范围=结束-开始;
无功电流=启动;
var增量=结束>开始?11:-1;
var stepTime=数学轮(持续时间/范围);
var obj=document.getElementById(id);
var timer=setInterval(函数(){
电流+=增量;
obj.innerHTML=parseFloat(当前).toLocaleString('en-US');

如果((增量>0&¤t>=end)| |(增量<0&¤t),则可以遵循的一个策略是在动画开始时设置时间戳,并检查要停止的时间

函数myCalculator(){
$(“.container2”).show();
var启动=1000;
var端=200000;
var持续时间=2000年;
animateValue(“值”、开始、结束、持续时间);
}
函数animateValue(id、开始、结束、持续时间){
var范围=结束-开始;
无功电流=启动;
var增量=结束>开始?11:-1;
var stepTime=数学轮(持续时间/范围);
var obj=document.getElementById(id);
//动画开始时的时间戳
var startTime=performance.now();
var timer=setInterval(函数(){
电流+=增量;
obj.innerHTML=parseFloat(当前).toLocaleString('en-US');
//此指令检查是否已超过60秒
//(performance.now()-startTime)/1000>60)
如果((增量>0和当前>=结束)| |(增量<0和当前60)){
obj.innerHTML=parseFloat(end.tolocalString('en-US');
清除间隔(计时器);
}
},步进时间);
}

单击此处查看动画

动画数量$
我做了一个不同的方法,看一看。 (我让它在6秒钟内停止,以便更容易地看到它工作,更改var secondsLeft以适应您的时间)

var定时器;
函数myCalculator(){
$(“.container2”).show();
var启动=1000;
var端=10000;
var持续时间=2000年;
animateValue(“值”、开始、结束、持续时间);
}
函数animateValue(id、开始、结束、持续时间){
var secondsLeft=6000;
运行时(id、开始、结束、持续时间);
setTimeout(函数(){stopClock();},secondsLeft);
}
函数运行时(id、开始、结束、持续时间){
var范围=结束-开始;
无功电流=启动;
var增量=结束>开始?11:-1;
var stepTime=数学轮(持续时间/范围);
var obj=document.getElementById(id);
计时器=设置间隔(函数(){
电流+=增量;
obj.innerHTML=parseFloat(当前).toLocaleString('en-US');
},步进时间);
}
函数stopClock(){
清除间隔(计时器);
}

单击此处查看动画
动画数量$

我不知道该怎么办,你能修复它吗?@Jasbir,解决方案是用代码编写的。尝试复制和粘贴很抱歉告诉你@Jose,我尝试了很多次,但你的脚本不起作用,即使是数字也不行animating@Jasbir看看我的编辑,你的代码正在运行是的,@Jose它正在运行,实际上我错过了播放动画。非常感谢。嘿@Jasbir,我添加了一个aswer,你能检查一下这是否对你有帮助吗?如果有,请投票。谢谢!@CalvinNunes我对你的答案投了赞成票,但我也希望对我的问题投赞成票