最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

前端實(shí)現(xiàn)時(shí)鐘網(wǎng)頁(yè)的詳細(xì)代碼示例

 更新時(shí)間:2024年09月27日 10:27:49   作者:Byyyi耀  
本文介紹了如何在網(wǎng)頁(yè)中實(shí)現(xiàn)一個(gè)動(dòng)態(tài)顯示的時(shí)鐘,并且添加了白天和夜晚兩種模式的切換功能,通過(guò)簡(jiǎn)單的HTML結(jié)構(gòu)和JavaScript代碼,使用Date()函數(shù)動(dòng)態(tài)獲取當(dāng)前的時(shí)間,并將時(shí)、分、秒通過(guò)邏輯綁定到相應(yīng)的div元素上,實(shí)現(xiàn)時(shí)鐘的動(dòng)態(tài)顯示,需要的朋友可以參考下

項(xiàng)目介紹

時(shí)鐘顯示在網(wǎng)頁(yè)中央,并且使網(wǎng)頁(yè)能夠切換白天和夜晚兩種模式。搭建基本的html結(jié)構(gòu),動(dòng)態(tài)得到實(shí)時(shí)的時(shí),分,秒通過(guò)Date()函數(shù)獲得。將得到的數(shù)字根據(jù)邏輯,綁定給各div結(jié)構(gòu),實(shí)行動(dòng)態(tài)旋轉(zhuǎn)。點(diǎn)擊按鈕,改變背景顏色給出最終的HTML代碼。

代碼

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>現(xiàn)代風(fēng)格時(shí)鐘</title>
    <style>
        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
            font-family: Arial, sans-serif;
            background-color: #f0f0f0;
            transition: background-color 0.5s;
        }
        .clock-container {
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        .clock {
            width: 200px;
            height: 200px;
            border-radius: 50%;
            background-color: white;
            position: relative;
            box-shadow: 0 0 20px rgba(0,0,0,0.1);
        }
        .hand {
            position: absolute;
            bottom: 50%;
            left: 50%;
            transform-origin: 50% 100%;
            border-radius: 5px;
        }
        .hour {
            width: 4px;
            height: 50px;
            background-color: #333;
        }
        .minute {
            width: 3px;
            height: 70px;
            background-color: #666;
        }
        .second {
            width: 2px;
            height: 90px;
            background-color: #e74c3c;
        }
        .center {
            position: absolute;
            top: 50%;
            left: 50%;
            width: 10px;
            height: 10px;
            border-radius: 50%;
            background-color: #333;
            transform: translate(-50%, -50%);
        }
        .digital-time {
            font-size: 48px;
            margin-top: 20px;
            color: #333;
        }
        .mode-switch {
            margin-top: 20px;
            padding: 10px 20px;
            font-size: 16px;
            cursor: pointer;
            background-color: #333;
            color: white;
            border: none;
            border-radius: 5px;
            transition: background-color 0.3s;
        }
        .mode-switch:hover {
            background-color: #555;
        }
        .night-mode {
            background-color: #222;
        }
        .night-mode .clock {
            background-color: #333;
            box-shadow: 0 0 20px rgba(255,255,255,0.1);
        }
        .night-mode .hour, .night-mode .minute {
            background-color: #fff;
        }
        .night-mode .second {
            background-color: #e74c3c;
        }
        .night-mode .center {
            background-color: #fff;
        }
        .night-mode .digital-time {
            color: #fff;
        }
        .night-mode .mode-switch {
            background-color: #f0f0f0;
            color: #333;
        }
        .night-mode .mode-switch:hover {
            background-color: #ddd;
        }
    </style>
</head>
<body>
    <div class="clock-container">
        <div class="clock">
            <div class="hand hour"></div>
            <div class="hand minute"></div>
            <div class="hand second"></div>
            <div class="center"></div>
        </div>
        <div class="digital-time"></div>
        <button class="mode-switch">Dark mode</button>
    </div>

    <script>
        function updateClock() {
            const now = new Date();
            const hours = now.getHours();
            const minutes = now.getMinutes();
            const seconds = now.getSeconds();

            const hourDeg = (hours % 12 + minutes / 60) * 30;
            const minuteDeg = (minutes + seconds / 60) * 6;
            const secondDeg = seconds * 6;

            document.querySelector('.hour').style.transform = `translateX(-50%) rotate(${hourDeg}deg)`;
            document.querySelector('.minute').style.transform = `translateX(-50%) rotate(${minuteDeg}deg)`;
            document.querySelector('.second').style.transform = `translateX(-50%) rotate(${secondDeg}deg)`;

            const digitalTime = `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')} ${hours >= 12 ? 'PM' : 'AM'}`;
            document.querySelector('.digital-time').textContent = digitalTime;
        }

        function toggleMode() {
            document.body.classList.toggle('night-mode');
            const button = document.querySelector('.mode-switch');
            button.textContent = document.body.classList.contains('night-mode') ? 'Light mode' : 'Dark mode';
        }

        setInterval(updateClock, 1000);
        updateClock(); // 立即更新一次,避免延遲

        document.querySelector('.mode-switch').addEventListener('click', toggleMode);
    </script>
</body>
</html>

效果圖

總結(jié) 

到此這篇關(guān)于前端實(shí)現(xiàn)時(shí)鐘網(wǎng)頁(yè)的文章就介紹到這了,更多相關(guān)前端時(shí)鐘網(wǎng)頁(yè)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 一文詳解HTML中script 標(biāo)簽的屬性

    一文詳解HTML中script 標(biāo)簽的屬性

    在HTML中,<script>標(biāo)簽用于嵌入或引用JavaScript代碼,在HTML中,<script>標(biāo)簽用于嵌入或引用JavaScript代碼,本文將詳細(xì)的而介紹這兩個(gè)標(biāo)簽,感興趣的同學(xué)可以參考一下
    2023-04-04
  • JS去除字符串最后的逗號(hào)實(shí)例分析【四種方法】

    JS去除字符串最后的逗號(hào)實(shí)例分析【四種方法】

    這篇文章主要介紹了JS去除字符串最后的逗號(hào),結(jié)合實(shí)例形式分析了四種字符串遍歷、截取的操作方法,需要的朋友可以參考下
    2019-06-06
  • 利用HTML與JavaScript實(shí)現(xiàn)注冊(cè)頁(yè)面源碼

    利用HTML與JavaScript實(shí)現(xiàn)注冊(cè)頁(yè)面源碼

    這篇文章主要給大家介紹了關(guān)于利用HTML與JavaScript實(shí)現(xiàn)注冊(cè)頁(yè)面的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),對(duì)大家實(shí)現(xiàn)注冊(cè)頁(yè)面具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-12-12
  • JS實(shí)現(xiàn)多物體運(yùn)動(dòng)

    JS實(shí)現(xiàn)多物體運(yùn)動(dòng)

    這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)多物體運(yùn)動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • js點(diǎn)擊時(shí)關(guān)閉該范圍下拉菜單之外的菜單方法

    js點(diǎn)擊時(shí)關(guān)閉該范圍下拉菜單之外的菜單方法

    下面小編就為大家分享一篇js點(diǎn)擊時(shí)關(guān)閉該范圍下拉菜單之外的菜單方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • JavaScript使用docx-preview實(shí)現(xiàn)word文檔預(yù)覽的完整步驟

    JavaScript使用docx-preview實(shí)現(xiàn)word文檔預(yù)覽的完整步驟

    docx-preview 是一個(gè)輕量級(jí)的 JavaScript 庫(kù),用于在瀏覽器中預(yù)覽 Word 文檔(.docx),無(wú)需后端轉(zhuǎn)換,它通過(guò)直接解析 .docx 的 XML 結(jié)構(gòu),在前端渲染為 HTML 展示,以下是在項(xiàng)目中實(shí)戰(zhàn)使用的完整步驟,需要的朋友可以參考下
    2025-11-11
  • JavaScript獲取當(dāng)前cpu使用率的方法

    JavaScript獲取當(dāng)前cpu使用率的方法

    這篇文章主要介紹了JavaScript獲取當(dāng)前cpu使用率的方法,涉及JavaScript針對(duì)系統(tǒng)硬件操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-12-12
  • 在圖片上顯示左右箭頭類(lèi)似翻頁(yè)的代碼

    在圖片上顯示左右箭頭類(lèi)似翻頁(yè)的代碼

    使用JS實(shí)現(xiàn)在圖片上顯示左右箭頭的翻頁(yè)代碼.實(shí)例使用了javascript的onmousemove 事件,onmousemove 事件會(huì)在鼠標(biāo)指針移動(dòng)時(shí)發(fā)生,感興趣的你可以參考下本文或許對(duì)你有所幫助
    2013-03-03
  • 詳解JS正則replace的使用方法

    詳解JS正則replace的使用方法

    這篇文章主要為大家詳細(xì)介紹了javascript正則replace的使用方法,感興趣的朋友可以參考一下
    2016-03-03
  • JavaScript創(chuàng)建一個(gè)歡迎cookie彈出窗實(shí)現(xiàn)代碼

    JavaScript創(chuàng)建一個(gè)歡迎cookie彈出窗實(shí)現(xiàn)代碼

    歡迎cookie想必大家早有耳聞,利用cookie記錄用戶(hù)狀態(tài)信息,當(dāng)用戶(hù)再次訪(fǎng)問(wèn)的時(shí)候彈出歡迎框,個(gè)人感覺(jué)還不錯(cuò)吧,希望對(duì)你學(xué)習(xí)cookie有所幫助
    2013-03-03

最新評(píng)論

湄潭县| 沁源县| 东阳市| 北川| 子长县| 江城| 南宁市| 星子县| 柘荣县| 小金县| 平果县| 晋州市| 奎屯市| 八宿县| 万载县| 基隆市| 长丰县| 思茅市| 黑龙江省| 潍坊市| 宕昌县| 农安县| 通山县| 澎湖县| 益阳市| 苍梧县| 孝昌县| 辰溪县| 祁东县| 隆回县| 阳曲县| 洛南县| 姚安县| 咸丰县| 芷江| 尼勒克县| 正定县| 汶上县| 台南市| 德清县| 米脂县|