首頁 > web前端 > js教程 > 如何使用或不使用 jQuery 建立一個簡單的 JavaScript 倒數計時器?

如何使用或不使用 jQuery 建立一個簡單的 JavaScript 倒數計時器?

Mary-Kate Olsen
發布: 2024-12-04 18:34:15
原創
275 人瀏覽過

How to Create a Simple JavaScript Countdown Timer with and without jQuery?

建立一個簡單的 JavaScript 倒數計時器

即使不使用複雜的 Date 對象,在 JavaScript 中實現倒數計時器也很簡單。以下是建立簡單倒數計時器的簡化指南:

Vanilla JavaScript

function startTimer(duration, display) {
    var timer = duration, minutes, seconds;
    setInterval(function () {
        minutes = parseInt(timer / 60, 10);
        seconds = parseInt(timer % 60, 10);

        minutes = minutes < 10 ? "0" + minutes : minutes;
        seconds = seconds < 10 ? "0" + seconds : seconds;

        display.textContent = minutes + ":" + seconds;

        if (--timer < 0) {
            timer = duration;
        }
    }, 1000);
}

window.onload = function () {
    var fiveMinutes = 60 * 5,
        display = document.querySelector('#time');
    startTimer(fiveMinutes, display);
};
登入後複製

此程式碼建立計時器變量,設定為所需的持續時間(以秒為單位)(在此程式碼中)情況下,5 分鐘)並用剩餘時間更新顯示元素。它每秒刷新一次,每次減少計時器並顯示格式化的分鐘和秒。一旦時間過去,計時器將重設為初始持續時間。

jQuery 選項(帶開始/停止按鈕)

對於帶有開始/停止按鈕的版本:

$(function () {
    var timer = 60 * 5,
        display = $("#time"),
        interval;
    $("#start").click(function () {
        interval = setInterval(function () {
            var minutes = Math.floor(timer / 60),
                seconds = timer % 60;
            minutes = minutes < 10 ? "0" + minutes : minutes;
            seconds = seconds < 10 ? "0" + seconds : seconds;
            display.text(minutes + ":" + seconds);
            timer--;
            if (timer < 0) {
                clearInterval(interval);
                timer = 60 * 5;
            }
        }, 1000);
    });
    $("#stop").click(function () {
        clearInterval(interval);
    });
});
登入後複製

此版本包括一個啟動計時器的開始按鈕和一個暫停計時器的停止按鈕。為了方便起見,它使用 jQuery,簡化了 DOM 元素的操作。

以上是如何使用或不使用 jQuery 建立一個簡單的 JavaScript 倒數計時器?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板