2014-11-15 4 views
0

저는 timer에 setInterval() 및 clearInterval() 메서드를 사용하고 있고 타이머를 각각 중지하고 있습니다. 나는 "타이머 시작"과 "타이머 멈춤"이라는 두 개의 버튼을 사용하고 있습니다. "타이머 정지"버튼을 클릭하면 시간이 멈추고 "타이머 시작"버튼을 클릭하면 멈추고 "타이머 정지"버튼을 다시 클릭하면 시간이 멈추지 않습니다. 이걸 좀 도와 주실 래요? 당신은() 함수가 startTimer에 변수를 MYVAR하는 간격을 지정하지 않는타이머가 시작된 후 버튼이 보이지 않습니다.

<html lang="en"> 
    <head> 
     <title>Document</title> 
    </head> 
    <body> 
     <p id="start"></p> 
     <button onClick = "startTimer()">Start Timer </button> 
     <button onClick = "stopTimer()"> Stop Timer </button> 
     <script> 
      var myVar = setInterval(function(){myTimer()},1000); 
      function myTimer() 
      { 
       var time = new Date(); 
       var t = time.toLocaleTimeString(); 
       document.getElementById("start").innerHTML = t; 
      } 
      function startTimer() 
      { 
       setInterval(function(){myTimer()}, 1000); 
      } 
      function stopTimer() 
      { 
       clearInterval(myVar); 
      } 
     </script> 
    </body> 
</html> 

답변

1

: 여기 내 코드입니다. 그 때문에 stopTimer()는 startTimer() 함수에 의해 설정된 간격을 지우지 않습니다.

더 안전하게 설정하려면 간격을 지울 수 있습니다. 그렇지 않으면 사용자가 타이머 시작 버튼을 두 번 이상 클릭하면 타이머 중지 버튼이 더 이상 작동하지 않습니다. 새로운 간격이 이전 간격을 지우지 않고 설정되어 있기 때문에, 허가되지 않은 이전의 간격

<html lang="en"> 
    <head> 
     <title>Document</title> 
    </head> 
    <body> 
     <p id="start"></p> 
     <button onClick = "startTimer()">Start Timer </button> 
     <button onClick = "stopTimer()"> Stop Timer </button> 
     <script> 
      var myVar; 
      startTimer(); 
      function myTimer() 
      { 
       var time = new Date(); 
       var t = time.toLocaleTimeString(); 
       document.getElementById("start").innerHTML = t; 
      } 
      function startTimer() 
      { 
       clearInterval(myVar); 
       myVar = setInterval(function(){myTimer()}, 1000); 
      } 
      function stopTimer() 
      { 
       clearInterval(myVar); 
      } 
     </script> 
    </body> 
</html> 
0

이 시도 ... 다음 실행됩니다

function startTimer() 
{ 
    myVar=setInterval(function(){myTimer()}, 1000); 
} 
0
<html lang="en"> 
    <head> 
     <title>Document</title> 
    </head> 
    <body> 
     <p id="start"></p> 
     <button onClick = "startTimer()">Start Timer </button> 
     <button onClick = "stopTimer()"> Stop Timer </button> 
     <script> 
      var myVar = setInterval(function(){myTimer()},1000); 
      function myTimer() 
      { 
       var time = new Date(); 
       var t = time.toLocaleTimeString(); 
       document.getElementById("start").innerHTML = t; 
      } 
      function startTimer() 
      { 
       myVar = setInterval(function(){myTimer()}, 1000); 
      } 
      function stopTimer() 
      { 
       clearInterval(myVar); 
      } 
     </script> 
    </body> 
</html> 
관련 문제