首頁 >web前端 >js教程 >建立一個倒數計時器網站

建立一個倒數計時器網站

PHPz
PHPz原創
2024-08-14 12:37:201059瀏覽

Build a Countdown Timer Website

介紹

各位開發者大家好!今天,我很高興分享我最近完成的一個項目:倒數計時器。這個專案是學習和練習 JavaScript 的好方法,特別是在時間操作和 DOM 更新領域。無論您是想為活動、產品發佈建立倒數計時,還是只是一個有趣的計時器,這個專案都是一個完美的開始。

項目概況

倒數計時器允許使用者設定目標日期和時間,它會不斷倒數天、小時、分鐘和秒,直到那一刻到來。計時器即時更新,提供視覺吸引力和響應式設計。該專案非常適合想要提高創建動態和互動式 Web 應用程式技能的開發人員。

特徵

  • 即時倒數:計時器每秒更新一次,顯示距指定日期的剩餘時間。
  • 響應式設計:佈局可以無縫適應不同的裝置和螢幕尺寸。
  • 可自訂結束日期:可以輕鬆修改目標日期和時間,使計時器適用於各種事件。

使用的技術

  • HTML:用來建立網頁上的內容。
  • CSS:用於設計網頁樣式並確保回應能力。
  • JavaScript:實作計算剩餘時間並即時更新 DOM。

專案結構

以下是專案結構的快速瀏覽:

Countdown-Timer/
├── index.html
├── style.css
└── script.js
  • index.html:包含網頁的 HTML 結構。
  • style.css:儲存 CSS 樣式,包括響應式設計規則。
  • script.js:使用 JavaScript 管理倒數邏輯和 DOM 更新。

安裝

要開始該項目,請按照以下步驟操作:

  1. 複製儲存庫

    git clone https://github.com/abhishekgurjar-in/Countdown-Timer.git
    
  2. 開啟專案目錄:

    cd Countdown-Timer
    
  3. 運行項目:

    • 您可以在本機伺服器上運行它,也可以簡單地在網頁瀏覽器中開啟index.html 檔案。

用法

  1. 在網頁瀏覽器中開啟網站
  2. 觀看計時器倒數到指定的結束日期。
  3. 在 script.js 檔案中自訂結束日期以滿足您的活動或要求。

程式碼說明

超文本標記語言

index.html 檔案包含網頁的結構,包括倒數顯示和簡單的標題。以下是 HTML 程式碼片段:

8b05045a5be5764f313ed5b9168a17e6
49099650ebdc5f3125501fa170048923
  93f0f5c25f18dab9d176bd4f6de5d30e
    7c8d9f814bcad6a1d7abe4eda5f773e5
    26faf3d1af674280d03ba217d87e9421
    b2386ffb911b14667cb8f0f91ea547a7Countdown Timer6e916e0f7d1e588d4f442bf645aedb2f
    d8b7823904473d155afe66ded7e78f93
  9c3bca370b5104690d9ef395f2c5f8d1
  6c04bd5ca3fcae76e30b72ad730ca86d
    473a967da286a3c736825b4619e7dc30
      af42a90d66eb0ab7ffd90605d49bfcdb
        924ff17625d603f964501dd897c96cc6
          4a249f0d628e2318394fd9b75b4636b1Countdown Timer473f0a7621bec819994bb5020d29372a
        16b28748ea4df4d9c2150843fecfba68
        9e80a1cbb6fa0609753359a9577296d4We are coming soon16b28748ea4df4d9c2150843fecfba68
        40cf589a8d9222aac570db87a343584a4 July 2025 10:00 PM16b28748ea4df4d9c2150843fecfba68
        e70522973cfd5bc8e7f5270545f1ac4d
          dc6dce4a544fdca2df29d5ac0ea9906b
            08aecd3082d1f5b25e4b501500d294fc
            df250b2156c434f3390392d09b1c9563
            2e1cf0710519d5598b1f0f14c36ba674Days8c1ecd4bb896b2264e0711597d40766c
          16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906b
            08aecd3082d1f5b25e4b501500d294fc
            df250b2156c434f3390392d09b1c9563
            2e1cf0710519d5598b1f0f14c36ba674Hours8c1ecd4bb896b2264e0711597d40766c
          16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906b
            08aecd3082d1f5b25e4b501500d294fc
            df250b2156c434f3390392d09b1c9563
            2e1cf0710519d5598b1f0f14c36ba674Minutes8c1ecd4bb896b2264e0711597d40766c
          16b28748ea4df4d9c2150843fecfba68
          dc6dce4a544fdca2df29d5ac0ea9906b
            08aecd3082d1f5b25e4b501500d294fc
            df250b2156c434f3390392d09b1c9563
            2e1cf0710519d5598b1f0f14c36ba674Seconds8c1ecd4bb896b2264e0711597d40766c
          16b28748ea4df4d9c2150843fecfba68
        16b28748ea4df4d9c2150843fecfba68
        ffd6ba4147bda351239915f463e46e38
          e388a4556c0f65e1904146cc1a846beeMade with ❤️ by Abhishek Gurjar94b3e26ee717c64999d7867364b1b4a3
        16b28748ea4df4d9c2150843fecfba68
      16b28748ea4df4d9c2150843fecfba68
    16b28748ea4df4d9c2150843fecfba68
    35c1efb1a96c7fc3ad8e56d875e8f4062cacc6d41bbb37262a98f745aa00fbf0
  36cc49f0c466276486e50c850b7e4956
73a6ac4ed44ffec12cee46588e518a5e

CSS

style.css 檔案包含確保網頁具有視覺吸引力的樣式,並包括針對不同螢幕尺寸的回應能力。以下是一些關鍵樣式:

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  font-family: "Poppins", sans-serif;
}

.main {
  width: 100%;
  height: 100vh;
  background: url(./images/bg.jpg);
  background-size: cover;
}

.overlay {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: white;
  background-color: rgba(0, 0, 0, 0.7);
}

.title {
  color: white;
  text-align: center;
  font-size: 2.5rem;
  padding: 25px;
}

.col {
  margin-top: 10px;
  width: 1000px;
  color: white;
  justify-content: center;
  display: flex;
}

.col div {
  width: 250px;
  text-align: center;
}

input {
  background-color: rgba(255, 255, 255, 0.9);
  border-color: transparent;
  border-radius: 5px;
  height: 50px;
  text-align: center;
  font-size: 20px;
}

.header {
  margin: 40px;
  text-align: center;
}

.footer {
  margin: 300px;
  text-align: center;
}

JavaScript

script.js 檔案管理倒數邏輯,每秒更新一次顯示。以下是 JavaScript 程式碼片段:

const endDate = "4 July 2025 10:00 PM";

document.getElementById("end-date").innerText = endDate;
const input = document.querySelectorAll("input");

function countDown() {
  const end = new Date(endDate);
  const now = new Date();
  const diff = (end - now) / 1000;

  if (diff < 0) return;

  input[0].value = Math.floor(diff / 3600 / 24);
  input[1].value = Math.floor(diff / 3600) % 24;
  input[2].value = Math.floor(diff / 60) % 60;
  input[3].value = Math.floor(diff) % 60;
}

countDown();
setInterval(countDown, 1000);

現場演示

您可以在此處查看倒數計時器的現場演示。

結論

建立這個倒數計時器是一次寶貴的學習經歷,它讓我能夠探索 JavaScript 在時間操作和 DOM 互動方面的功能。我希望這個專案能夠激勵您創建自己的動態和互動式應用程式。請隨意探索程式碼、對其進行自訂並在您自己的專案中使用它。快樂編碼!

製作人員

這個項目的靈感來自於對各種活動的簡單有效的倒數計時工具的需求。

作者

  • 阿布舍克·古賈爾
    • GitHub 簡介

以上是建立一個倒數計時器網站的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn