Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.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/2/image-processing/2.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 - Fatal编程技术网

Javascript简单计时器不能正确工作

Javascript简单计时器不能正确工作,javascript,Javascript,请帮我写代码。我的问题是当计时器结束时,它显示-1:60而不是0:00。我尝试了不同的else语句,但没有成功。当我将if语句中的条件更改为x>0时,计时器不会从0:60下降。任何帮助都将不胜感激。我尝试了其他不同的说法,如果其他的话,没有任何帮助。 先谢谢你 <h1 id='session' onClick='general()'>2</h1> 2 JS: var秒=60; var x=document.getElementById('session').inne

请帮我写代码。我的问题是当计时器结束时,它显示-1:60而不是0:00。我尝试了不同的else语句,但没有成功。当我将if语句中的条件更改为x>0时,计时器不会从0:60下降。任何帮助都将不胜感激。我尝试了其他不同的说法,如果其他的话,没有任何帮助。 先谢谢你

<h1  id='session' onClick='general()'>2</h1>
2
JS:

var秒=60;
var x=document.getElementById('session').innerHTML-1;
变量t;
函数计时器(){
如果(x>=0){
秒--;

如果(秒我为你创建了一把小提琴,它会将计时器从60秒倒计时到00秒

小提琴

HTML

<h1>
 <span id="min">0</span>
 :
 <span id="sec">00</span>
</h1>

0
:
00
JS

var seconds = 60,
    secondDom = document.getElementById("sec");

secondDom.innerHTML = seconds;

var countdown = function(){
    seconds--;
    if(seconds < 0){
      clearInterval(timer);
    }else{
      secondDom.innerHTML = (seconds < 10 ? "0" + seconds : seconds);
    }
}

var timer = setInterval(countdown,1000);
var秒=60,
secondDom=document.getElementById(“sec”);
secondom.innerHTML=秒;
var倒计时=函数(){
秒--;
如果(秒<0){
清除间隔(计时器);
}否则{
secondDom.innerHTML=(秒数<10?“0”+秒数:秒);
}
}
var定时器=设置间隔(倒计时,1000);

希望这有帮助。:

我为你制作了一把小提琴,它将计时器从60秒倒计时到00秒

小提琴

HTML

<h1>
 <span id="min">0</span>
 :
 <span id="sec">00</span>
</h1>

0
:
00
JS

var seconds = 60,
    secondDom = document.getElementById("sec");

secondDom.innerHTML = seconds;

var countdown = function(){
    seconds--;
    if(seconds < 0){
      clearInterval(timer);
    }else{
      secondDom.innerHTML = (seconds < 10 ? "0" + seconds : seconds);
    }
}

var timer = setInterval(countdown,1000);
var秒=60,
secondDom=document.getElementById(“sec”);
secondom.innerHTML=秒;
var倒计时=函数(){
秒--;
如果(秒<0){
清除间隔(计时器);
}否则{
secondDom.innerHTML=(秒数<10?“0”+秒数:秒);
}
}
var定时器=设置间隔(倒计时,1000);

希望这有帮助。:

我已经从您的代码中删除了某些不必要的内容。不过, 你应该知道这不是2分钟。我的“设定间隔”是基于 在你原来的设定时间间隔上

HTML:

1
JS:


var秒=60;
var x=document.getElementById('session').innerHTML;
变量t;
函数计时器(){
如果(x==0&&seconds==0)
{
停止计时器(t);
}
否则如果(秒===0){
秒=60;
x--;
}
否则{
秒--;
}
document.getElementById('session')。innerHTML=x+':'+秒;
}
函数stoptimer(){
净间隔(t);
}
var on=真;
函数一般(){
如果(开){
开=假;
t=设置间隔(计时器,200);
}否则{
开=真;
停止计时器();
}
}

我已从您的代码中删除了某些不必要的内容。不过, 你应该知道这不是2分钟。我的“设定间隔”是基于 在你原来的设定时间间隔上

HTML:

1
JS:


var秒=60;
var x=document.getElementById('session').innerHTML;
变量t;
函数计时器(){
如果(x==0&&seconds==0)
{
停止计时器(t);
}
否则如果(秒===0){
秒=60;
x--;
}
否则{
秒--;
}
document.getElementById('session')。innerHTML=x+':'+秒;
}
函数stoptimer(){
净间隔(t);
}
var on=真;
函数一般(){
如果(开){
开=假;
t=设置间隔(计时器,200);
}否则{
开=真;
停止计时器();
}
}

问题完全是因为计时器功能,所以我对您的函数做了一些更改,并重写了它。我在JSFIDLE中运行了它,它运行正常

function timer(){        
   if(x>=0 && flag==false){
      seconds--; 
      if(seconds<10){
         seconds='0'+seconds;
        };
       if(seconds==0){
           x--;
          seconds=60;
         }
        }
    if (x == -1){
     flag=true;
     x = 0;
     seconds = '00';
    }
    document.getElementById('session').innerHTML=x+':'+seconds;
}
函数计时器(){
如果(x>=0&&flag==false){
秒--;

如果(秒问题都是因为计时器功能,所以我对您的函数做了一些更改,并重写了它。我在JSFIDLE中运行了它,它正常工作

function timer(){        
   if(x>=0 && flag==false){
      seconds--; 
      if(seconds<10){
         seconds='0'+seconds;
        };
       if(seconds==0){
           x--;
          seconds=60;
         }
        }
    if (x == -1){
     flag=true;
     x = 0;
     seconds = '00';
    }
    document.getElementById('session').innerHTML=x+':'+seconds;
}
函数计时器(){
如果(x>=0&&flag==false){
秒--;

如果(第二,很难理解你的问题是什么,试着写更多关于你正在尝试做什么的内容。我的问题是当计时器完成时,它显示-1:60而不是显示0:00。我尝试了不同的else语句方式,但没有成功。当我将if语句中的条件更改为x>0时,计时器不会从0:60下降。很难取消了解你的问题是什么,试着写更多关于你正在尝试做的事情。好吧,我的问题是当计时器完成时,它显示-1:60而不是显示0:00。我尝试了不同的else语句方式,但没有成功。当我将if语句中的条件更改为x>0时,计时器不会从0:60下降。非常感谢,这真的很有帮助。:)非常感谢,这真的很有帮助。:)非常感谢你的努力。非常感谢。非常感谢。