【问题标题】:Adding time to a Javascript Date.Now向 Javascript Date.Now 添加时间
【发布时间】:2021-08-07 13:22:28
【问题描述】:

所以我在 JS 中创建了一个倒数计时器,但我意识到我的客户网站在时间列表上有 GMT +2,这意味着计数器没有倒计时到正确的时间。

这是我的 JS 和下面计数器的截图。

$('.countdownListTimer').each(function (i, obj) {
        var startTime = $(this).attr("data-startTime");
        var today = new Date();

        const diffTime = Math.abs(startTime - today);
        const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));

        var countdownListTimerId = $(this).attr("data-id");
        var countDownDate = new Date(startTime).getTime();
        var x = setInterval(function () {
            var now = new Date().getTime();
            var distance = countDownDate - now;
            var days = Math.floor(distance / (1000 * 60 * 60 * 24));
            var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
            var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
            //var seconds = Math.floor((distance % (1000 * 60)) / 1000);


            $("#" + countdownListTimerId).html(days + "d " + hours + "h "  + minutes + "m ");

            if (days < 1) {
                $("#" + countdownListTimerId).html(hours + "h " + minutes + "m "/* + seconds + "s "*/);
            }
            if (hours < 1) {
                $("#" + countdownListTimerId).html(minutes + "m "/* + seconds + "s "*/);
            }
            //if (minutes < 1) {
            //    $("#" + countdownTimerId).html(seconds + "s ");
            //}
            if (distance < 1) {
                clearInterval(x);
                $("#" + countdownListTimerId).html("Ended");
            }
        }, 1000);
    });

screenshot of the site counter and time its reading from

【问题讨论】:

  • 属性“data-startTime”的格式是什么?

标签: javascript datetime time gmt


【解决方案1】:

您应该确保countDownDate 是从指定的UTC 日期计算的。因此,要么将“data-startTime”属性设为指定 UTC 日期/时间的字符串,要么在创建日期对象时将其解释。第一个想法可能更简单:

例如属性可以是:

data-startTime="2021-05-19T20:00:00.000Z"

因此,重复一遍,这将是 UTC 时区中的目标时间。

【讨论】:

    猜你喜欢
    • 2018-01-09
    • 1970-01-01
    • 2011-12-23
    • 2017-05-23
    • 2014-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多