c# - 使用setTimeout在javascript中倒数计时器

标签 c# javascript jquery asp.net

我正在使用 jquery 创建一个倒数计时器,我引用了这里的几个示例并得出了以下代码。问题是时间不显示,我不知道出了什么问题。卡了快2个小时了..

后台代码

    var day = 1;                        //countdown time
    var start = player.LastActive;      // Use UtcNow instead of Now
    var endTime = start.AddDays(day);   //endTime is a member, not a local variable
    Timespan remainingTime = endTime - DateTime.UtcNow;

我的javascript

var endTime = '<%= remainingTime%>';
var startTime = '<%= DateTime.UtcNow %>'

$(document).load(function () {
        countDown(endTime);
    });

    function countDown(endTime) {
        if (endTime > 0) {
            var d = document.getElementById("countDiv");
            d.innerHTML = endTime;
            setTimeout(function () { countDown(endTime - 1); }, 1000);
        }
    }

我的html

<div id="countDiv" style="float:left;margin-top: 13px; margin-left:5px;"></div>

我的目标是展示多长时间,让玩家获得他的日常 Action :这是玩家上次事件时间之后的一天。有人可以启发我..谢谢

最佳答案

使用$(window).load

$(document).ready

但不是$(document).load

因为你似乎在使用 jquery,所以你可以这样做

$(document).ready(function () {
        countDown(endTime);
    });

    function countDown(endTime) {
        if (endTime > 0) {
            $('#countDiv').text(secondsToTime(endTime));
            setTimeout(function () { countDown(endTime - 1); }, 1000);
        }
    }
function secondsToTime(secs)
{
    var hours = Math.floor(secs / (60 * 60));

    var divisor_for_minutes = secs % (60 * 60);
    var minutes = Math.floor(divisor_for_minutes / 60);

    var divisor_for_seconds = divisor_for_minutes % 60;
    var seconds = Math.ceil(divisor_for_seconds);

    return hours +':' + minutes + ':' + seconds;
}

有几秒钟的时间,它来自 https://stackoverflow.com/a/6312999/961526 ,您可以使用您可以在那里找到的另一个版本。

参见 jsFiddle

关于c# - 使用setTimeout在javascript中倒数计时器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18785217/

相关文章:

c# - 此存储库模式对于 LINQ-to-SQL 有效吗?

c# - 如何以最快的方式从文件夹中获取所有动态图像到网站?

c# - 在可移植类库中使用 await HttpClient.GetAsync 的异常

javascript - 在放大结构 js 时保持对象大小

c# - 在数据表中添加标签

javascript - 在 javascript 中部分应用带有下划线的 String.prototype...

javascript - 如何多次更新 Firebase

javascript - 如何在 10 秒不活动后显示弹出窗口

javascript - 如何更改图像的不透明度?

javascript - 在浏览器刷新时保持隐藏的 div id