Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/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 暂停/恢复jQuery倒计时_Javascript_Jquery_Html - Fatal编程技术网

Javascript 暂停/恢复jQuery倒计时

Javascript 暂停/恢复jQuery倒计时,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试使用JSonClick()事件制作一个可以用单个HTML5按钮标记暂停的倒计时计时器,或者更可取的做法是,使用jQuery和类似$(“#暂停(u resume”).off('click')。on('click',firstClick),并结合另一个函数。从逻辑上讲,我假设该任务需要获取$.min和$.sec的当前值,然后在切换功能时设置这些值,直到再次按下“恢复”按钮。但我真的不知道该怎么做。我看过这个网站和其他网站上的其他代码,但我看到的是严重不推荐的,不符合我的项目计划。任何见解都

我正在尝试使用JS
onClick()
事件制作一个可以用单个HTML5按钮标记暂停的倒计时计时器,或者更可取的做法是,使用jQuery和类似
$(“#暂停(u resume”).off('click')。on('click',firstClick)
,并结合另一个函数。从逻辑上讲,我假设该任务需要获取
$.min
$.sec
的当前值,然后在切换功能时设置这些值,直到再次按下“恢复”按钮。但我真的不知道该怎么做。我看过这个网站和其他网站上的其他代码,但我看到的是严重不推荐的,不符合我的项目计划。任何见解都值得赞赏

HTML:

<p class="timer">
   <span class="min"></span>:<span class="sec"></span>/
   <span class="fullTime">1:30</span>
</p>
<script type="text/javascript">
    var timer = $('.timer');
    var leadingZero = function(n) {
        if (n < 10 && n >= 0)
            return '0' + n;
        else
            return n;
    };
    var minutes = 1;
    var seconds = 30;
    setInterval(function () {  
        var m = $('.min', timer),
            s = $('.sec', timer);
        if (seconds == 0) {
            minutes--;
            seconds = 59;
        } else {
            seconds--;
        }
        m.text(minutes);
        s.text(leadingZero(seconds));

    }, 1000);
</script>

:/ 1:30

JavaScript:

<p class="timer">
   <span class="min"></span>:<span class="sec"></span>/
   <span class="fullTime">1:30</span>
</p>
<script type="text/javascript">
    var timer = $('.timer');
    var leadingZero = function(n) {
        if (n < 10 && n >= 0)
            return '0' + n;
        else
            return n;
    };
    var minutes = 1;
    var seconds = 30;
    setInterval(function () {  
        var m = $('.min', timer),
            s = $('.sec', timer);
        if (seconds == 0) {
            minutes--;
            seconds = 59;
        } else {
            seconds--;
        }
        m.text(minutes);
        s.text(leadingZero(seconds));

    }, 1000);
</script>

变量计时器=$('.timer');
var引线零=功能(n){
如果(n<10&&n>=0)
返回“0”+n;
其他的
返回n;
};
var分钟=1;
var秒=30;
setInterval(函数(){
变量m=$('.min',计时器),
s=$('秒',计时器);
如果(秒==0){
分钟--;
秒=59;
}否则{
秒--;
}
m、 文本(分钟);
s、 文本(前导零(秒));
}, 1000);

好吧,我想这就是你想要的

我添加了一个按钮,可以在单击时切换布尔值,以确定是在间隔中设置函数还是清除间隔

var clicked=true;
var counter;
$('button').click(function(){
    if(clicked){
       counter=setInterval(function () {  
         var m = $('.min', timer),
         s = $('.sec', timer);
         if (seconds === 0) {
           minutes--;
           seconds = 59;
         } else {
           seconds--;
         }
         m.text(minutes);
         s.text(leadingZero(seconds));
       }, 1000);
   }
   else{
     clearInterval(counter);
   }
   clicked=!clicked;
});