这是我在此的头一篇博文。我对 JS 不是很熟悉,还不能掌握它。几天来,我一直在尝试各种代码,试图在倒数计时器超时之前停止它(这不是我的代码),但无济于事,所以放弃了“猜测”,并会问专家。提前致谢。
<button onclick="myStopFunction()">STOP</button><p>
<script>
function countDown(frm)
{
var start=frm.v1.value;
var now=new Date();
var end=new Date(frm.yr.value,frm.mth.value- 1,frm.day.value,frm.hrs.value,frm.min.value);
var diff = (end - now)/1000;
var step=(start-frm.v2.value)/diff;
document.getElementById("counter").innerHTML=start;
var myint=setInterval(function(){start=start-step; document.getElementById("counter").innerHTML=start.toFixed(2);
if(start<frm.v2.value){document.getElementById("counter").innerHTML="Ended"; clearInterval(myint)}},1000);
}
function myStopFunction()
{
clearInterval(myint);
}
</script>
我已经尝试过您的更新(见下文),但计数器将不再启动。我可能误解了你的回复。
var myint;
function countDown(frm)
{
var start=frm.v1.value;
var now=new Date();
var end=new Date(frm.yr.value,frm.mth.value- 1,frm.day.value,frm.hrs.value,frm.min.value);
var diff = (end - now)/1000;
var step=(start-frm.v2.value)/diff;
document.getElementById("counter").innerHTML=start;
}
{
myint=setInterval(function(){start=start-step; document.getElementById("counter").innerHTML=start.toFixed(2);
if(start<frm.v2.value) {document.getElementById("counter").innerHTML="Ended";clearInterval(myint)}},1000);
}
function myStopFunction()
{
clearInterval(myint);
}
你的“神童”非常感谢你。看了你第一百遍的回复后,我知道我肯定误解了你的回复。它现在工作正常。我是一个学习者。