簡體   English   中英

如何使用JavaScript使秒表移動?

[英]How to make the second for timer move using JavaScript?

此功能將顯示日期和時間。 至於時間,它將以這種格式“ 00:00:00”顯示,但是“秒”並非僅靜態移動。 下面是代碼:

function isDst(d) {
    var dst = 60; // DST on by default.

    // Up until March 9 switch off DST.
    if ((d.getMonth() < 3) && (d.getDate() < 10)) { dst = 0; }

    // After November 2 switch off DST.
    if ((d.getMonth() > 9) && (d.getDate() > 2)) { dst = 0; }

    return dst;
}

function init() {
    var panel = document.getElementById("panel");
    var now = new Date()  
    var offset = now.getTimezoneOffset();
    var dst = isDst(now);
    switch (offset) {
        case (300 - dst): offset = "East Coast"; break;
        case (360 - dst): offset = "Central"; break;
        case (420 - dst): offset = "Mountain"; break;
        case (480 - dst): offset = "Pacific"; break;
        default: offset = "all";
    }
    panel.innerHTML = "Date and Time: " + now.toString() + "<hr>Welcome to " + offset + " visitors";
}
document.addEventListener("DOMContentLoaded", init, false);

如果我對您的理解正確,則希望網站上的文本每秒更新一次。

您的腳本無效,因為您將#panel的innerHTML設置為使用當前時間創建的字符串。 HTML中沒有任何內容可告訴瀏覽器更新字符串。 您必須在JavaScript中添加自己的代碼。

最簡單的方法是使用window.setInterval();。 功能。 創建一個將文本更新為當前時間的函數,然后調用window.setInterval(myFunc,1000)。 注意myFunc上沒有括號。 這意味着您將傳遞函數 myFunc而不是myFunc的返回值 第二個參數是再次調用該函數之前要等待的毫秒數。 如果要使用setTimeout調用myFunc,則window.setInterval每1000毫秒調用myFunc。

綜上所述,要使腳本正常工作,您需要添加以下行:

window.setInterval(init, 1000);

請享用!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM