繁体   English   中英

jQuery用计时器计数

[英]jQuery counting with timer

这是简单的功能,当单击btnGo计时器将停止并获取其值时,如果剩余时间不超过其值,则将+1自动添加到按时间总计。我的问题是它没有添加,仅显示以下值是我的实时演示代码

我的JS

var sec = $('#timerSec').text() || 0;
var timer;

function startTimer() {
    if (timer) clearInterval(timer);
    sec = 10;
    timer = setInterval(function() {
        $('#timerSec').text(sec--);
        if (sec == 0) {
            clearInterval(timer);
        }
    }, 1000);
}
$(function() {
startTimer();

$('#btnGo').click(function(){
    $(this).fadeOut();
    $("#alert").fadeIn();
    clearInterval(timer);
    var secR = $('#timerSec').text();
    var t = $('#alert span').text()
    $('#btnCon').fadeIn();
    if (secR != 0 ){
    var i = t+1;
    }
    $('#alert span').html(i).show();
});
$('#btnCon').click(function(){
   $("#alert").fadeOut();
    $("#btnGo").fadeIn();
    startTimer();
});


});

我的HTML

<div id="timerSec">10</div> seconds

<a href="#" id="btnGo">Go</a>
<div id="alert" style="display:none">
<a href="#" id="btnCon" >Continue</a>
 On time = <span>0</span>
</div>

现场演示 jsfiddle

我不确定它的功能是否如您所愿,但是在任何情况下,添加的问题都是将span的文本值视为字符串(它是)。 因此,当您向其“添加” 1时,它实际上是串联的。 您可以使用Number()解决此问题。 请参阅此更新的代码

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM