Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.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_Animation - Fatal编程技术网

如何在JavaScript中制作计数动画?

如何在JavaScript中制作计数动画?,javascript,animation,Javascript,Animation,好的,我必须显示一个文本字段,以便用户可以输入一个整数。然后显示两个按钮“开始动画”和“停止动画” 单击“开始动画”按钮时,网页将按以下方式显示动画时间表 例如,如果用户输入数字6,则会显示动画 6x1=6,1秒后用6x2=12替换,1秒后用6x3=18替换,依此类推。如果是6x9=54,1秒后变为6x1=6,然后是6x2=12,依此类推 单击“停止动画”按钮后,网页将停止动画。当前显示的方程式将保留在页面上 这是我到目前为止的代码 var计数器=0; var计划; 函数startCountr

好的,我必须显示一个文本字段,以便用户可以输入一个整数。然后显示两个按钮“开始动画”和“停止动画”

单击“开始动画”按钮时,网页将按以下方式显示动画时间表

例如,如果用户输入数字6,则会显示动画

6x1=6,1秒后用6x2=12替换,1秒后用6x3=18替换,依此类推。如果是6x9=54,1秒后变为6x1=6,然后是6x2=12,依此类推

单击“停止动画”按钮后,网页将停止动画。当前显示的方程式将保留在页面上

这是我到目前为止的代码

var计数器=0;
var计划;
函数startCountranization(){
//启动计数器动画
计数器时间表=设置间隔(显示计数器,1000);
}
函数showCounter(){
//将计数器增加1
计数器=计数器+1;
//出示柜台
var counterSpan=document.getElementById(“计数器”);
counterSpan.innerHTML=计数器;
}
函数stopCounterAnimation(){
清除间隔(反计划);
}

启动动画
停止动画



我不太明白你想要什么帮助,但我根据我的理解解决了

var计数器=0;
var计划;
var输入=document.getElementById(“编号”);
var counterSpan=document.getElementById(“计数器”);
函数startCountranization(){
计数器时间表=设置间隔(显示计数器,1000);
}
函数showCounter(){
if(~~input.value){
如果(计数器>=10)
计数器=0;
计数器++;
counterSpan.innerHTML=input.value+“X”+计数器+“=”+eval(input.value+“*”+计数器);
}
}
函数stopCounterAnimation(){
清除间隔(反计划);
input.value=“”;
计数器=0;
}

启动动画
停止动画



我不太明白你想要什么帮助,但我根据我的理解解决了

var计数器=0;
var计划;
var输入=document.getElementById(“编号”);
var counterSpan=document.getElementById(“计数器”);
函数startCountranization(){
计数器时间表=设置间隔(显示计数器,1000);
}
函数showCounter(){
if(~~input.value){
如果(计数器>=10)
计数器=0;
计数器++;
counterSpan.innerHTML=input.value+“X”+计数器+“=”+eval(input.value+“*”+计数器);
}
}
函数stopCounterAnimation(){
清除间隔(反计划);
input.value=“”;
计数器=0;
}

启动动画
停止动画



我不确定我是否正确理解了你的问题(我没有真正看到问题)。您的代码看起来不错,但您希望它在达到10后重新开始? 尝试使用模运算符% 因此,替换

counterSpan.innerHTML=计数器

counterSpan.innerHTML=计数器%10


告诉我我是否误解了这个问题。

我不确定我是否正确理解了你的问题(我真的没有看到问题)。您的代码看起来不错,但您希望它在达到10后重新开始? 尝试使用模运算符% 因此,替换

counterSpan.innerHTML=计数器

counterSpan.innerHTML=计数器%10


告诉我我是否误解了这个问题。

我没有投反对票,但我认为OP希望它只排到10位。另外eval=evil,特别是因为在这里处理用户输入,所以可以执行任意代码。尝试使用代码段获取警报框;)@是的,输入很好,eval可能不是最佳方法,但我认为在这种情况下它很好。还添加了一个数字检查,忘记了为什么要使用黑客代码golfy~~?它是负数还是非整数重要吗?它会成倍增长。如果(!(isNaN(input.value))
insteadop说“当前显示的任何等式都将保留在页面上”,我只需检查
因此,您可能希望删除将其设置为空的最后一行string@Patte非常感谢,这正是我想要得到的!我没有否决投票,但我认为OP希望它只转到10。还有eval=evil,特别是因为你在这里处理用户输入,你可以执行任意代码。尝试使用代码段获取警报框;)@是的,输入很好,eval可能不是最佳方法,但我认为在这种情况下它很好。还添加了一个数字检查,忘记了为什么要使用黑客代码golfy~~?它是负数还是非整数重要吗?它会成倍增长。如果(!(isNaN(input.value))
insteadop说“当前显示的任何等式都将保留在页面上”,我只需检查
,因此您可能需要删除最后一行,将其设置为空string@Patte非常感谢,这正是我想要表达的意思!