Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/466.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,我有下面的JS代码,它显示了一个倒计时计时器,应该从每小时的00分钟开始,到10分钟结束 @php $dt = date('Y/m/d H:i:s'); @endphp <script> var countDownDate = new Date("Jan 5, 2100 23:10:00").getTime(); var now = new Date("<?php echo $dt; ?>").getTime(); var x = setInterval(f

我有下面的JS代码,它显示了一个倒计时计时器,应该从每小时的00分钟开始,到10分钟结束

@php
$dt = date('Y/m/d H:i:s');
@endphp

    <script>

var countDownDate = new Date("Jan 5, 2100 23:10:00").getTime();
var now = new Date("<?php echo $dt; ?>").getTime();

var x = setInterval(function() {

  now+= 1000

  var distance = countDownDate - now;
  var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
  var seconds = Math.floor((distance % (1000 * 60)) / 1000);

  document.getElementById("timer10").innerHTML = 

   minutes + "m " + seconds + "s ";

}, 1000);
@php
$dt=日期('Y/m/d H:i:s');
@endphp
var countDownDate=新日期(“2100年1月5日23:10:00”).getTime();
var now=新日期(“”.getTime();
var x=setInterval(函数(){
现在+=1000
var距离=倒计时日期-现在;
var分钟=数学楼层((距离%(1000*60*60))/(1000*60));
var秒=数学楼层((距离%(1000*60))/1000);
document.getElementById(“timer10”).innerHTML=
分钟+米+秒+秒;
}, 1000);

它工作正常,只是它没有在00:00停止,并且它重置了从59:59再次启动的计时器。我应该添加什么使计时器在00:00停止?

您永远不会清除间隔。您需要调用
clearInterval
函数

@php
$dt = date('Y/m/d H:i:s');
@endphp

    <script>

var countDownDate = new Date("Jan 5, 2100 23:10:00").getTime();
var now = new Date("<?php echo $dt; ?>").getTime();

var x = setInterval(function() {

  now+= 1000

  var distance = countDownDate - now;
  var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
  var seconds = Math.floor((distance % (1000 * 60)) / 1000);

  document.getElementById("timer10").innerHTML = 

   minutes + "m " + seconds + "s ";
   if(minutes === 0 && seconds === 0) {
    clearInterval(x);
    // the interval will stop at this point.
   }

}, 1000);
@php
$dt=日期('Y/m/d H:i:s');
@endphp
var countDownDate=新日期(“2100年1月5日23:10:00”).getTime();
var now=新日期(“”.getTime();
var x=setInterval(函数(){
现在+=1000
var距离=倒计时日期-现在;
var分钟=数学楼层((距离%(1000*60*60))/(1000*60));
var秒=数学楼层((距离%(1000*60))/1000);
document.getElementById(“timer10”).innerHTML=
分钟+米+秒+秒;
如果(分钟===0和秒===0){
净间隔(x);
//间隔将在此点停止。
}
}, 1000);