日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

js+css3實現(xiàn)簡單時鐘特效

瀏覽:414日期:2024-04-20 15:32:52

本文實例為大家分享了js+css3實現(xiàn)簡單時鐘的具體代碼,供大家參考,具體內(nèi)容如下

1.實現(xiàn)了時鐘的特效,可以轉(zhuǎn)動,時間準(zhǔn)確,畫面美觀大氣;2.用到了css3的transform: rotate,transform-origin:,偽元素,border-radius,定位,z-index等等

效果如圖:

js+css3實現(xiàn)簡單時鐘特效

代碼如下:

<!DOCTYPE html><html> <head> <meta charset='UTF-8'> <title>CSS3時鐘特效</title> <link rel='shortcut icon' type='image/x-icon' href='http://m.b3g6.com/bcjs/img/an.ico' /> <style> /*表盤邊框*/ .clock { /* 設(shè)置大小 */ width: 400px; height: 400px; position: relative; margin: 40px auto; /*上邊距*/ border-radius: 50%; /*圓形*/ box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.5); /*表盤陰影*/ background: #F5DEB3; border: 10px solid #FFFF00; } /*畫刻度的面板*/ .box { width: 100%; height: 100%; position: absolute; top: 0; left: 0; } /*用來裝刻度和數(shù)字的div*/ .box div { width: 0px; height: 200px; position: absolute; left: 200px; /*旋轉(zhuǎn)*/ transform: rotate(0deg); /*設(shè)置基點為右下角*/ transform-origin: bottom right; background: rgba(255, 0, 0, 0.5); } /*數(shù)字*/ .box div i { float: left; margin-top: 20px; margin-left: -10px; font-style: normal; width: 20px; text-align: center; font-style: 18px; } /*小刻度*/ .box div::after { content: ''; position: absolute; background: #484848; width: 2px; height: 10px; left: -1px; } /*大刻度*/ .box div.five::after { position: absolute; content: ''; width: 4px; height: 20px; left: -2px; top: 0; background: #484848; border-radius: 0 0 2px 2px; } /*秒針樣式*/ .second { width: 1px; height: 200px; background: red; position: absolute; left: 200px; /*距離表盤寬度一半*/ margin-top: 30px; z-index: 10; transform: rotate(0deg); transform-origin: center 170px; /*定位旋轉(zhuǎn)位置*/ } /*圓心樣式*/ .second::after { content: ''; position: absolute; width: 20px; height: 20px; background: red; border-radius: 50%; bottom: 20px; left: -10px; } /*分針樣式*/ .minute { width: 2px; height: 140px; background: #8b8b8d; position: absolute; left: 199px; margin-top: 60px; z-index: 9; transform-origin: center bottom; transform: rotate(12deg); animation: minute 60s linear infinite; } /*時針樣式*/ .hour { width: 6px; height: 100px; background: #333; position: absolute; left: 197px; margin-top: 100px; z-index: 8; border-radius: 3px; transform: rotate(2deg); transform-origin: center bottom; animation: minute 60s linear infinite; } </style> </head> <body> <div class='clock'> <div class='box'></div> <div class='second'></div> <div class='minute'></div> <div class='hour'></div> </div> <script> var box = document.getElementsByClassName('box')[0]; var ssObj = document.getElementsByClassName('second')[0]; var mmObj = document.getElementsByClassName('minute')[0]; var hhObj = document.getElementsByClassName('hour')[0]; /*獲取當(dāng)前時間*/ var date = new Date(); var hh = date.getHours(); var mm = date.getMinutes(); var ss = date.getSeconds(); /*計算頁面指針加載時的角度*/ hhDeg = 360 * (hh % 12) / 12; mmDeg = 360 * mm / 60; ssDeg = 360 * ss / 60; hhObj.style.transform = 'rotate(' + hhDeg + 'deg)'; mmObj.style.transform = 'rotate(' + mmDeg + 'deg)'; ssObj.style.transform = 'rotate(' + ssDeg + 'deg)'; // 定義初始刻度的度數(shù) var Deg = 0; /*畫刻度*/ for (var i = 0; i < 60; i++) { var div1 = document.createElement('div'); //創(chuàng)建一個div var hourNum = i / 5; //當(dāng)為5時 if (hourNum == 0) hourNum = 12; if (i % 5 == 0) { //大刻度 div1.className = 'five'; div1.innerHTML = '<i>' + hourNum + '</i>' } div1.style.transform = 'rotate(' + Deg + 'deg)'; box.appendChild(div1); Deg += 6;// 每兩個刻度之間是6度 } /*指針轉(zhuǎn)動的函數(shù)*/ function drawSS() { // 秒針的度數(shù) ssDeg = 360 * ss / 60; // 分針的度數(shù) mmDeg1 = 360 * mm / 60; // 時針的度數(shù) hhDeg1 = 360 * (hh % 12) / 12; // 分針每秒走的位置 mmDeg = mmDeg1 + (6 * ss / 60); // 時針每分鐘走的位置 hhDeg = hhDeg1 + (30 * mm / 60); hhObj.style.transform = 'rotate(' + hhDeg + 'deg)'; mmObj.style.transform = 'rotate(' + mmDeg + 'deg)'; ssObj.style.transform = 'rotate(' + ssDeg + 'deg)'; ss += 1; if (ss > 60) { ss = 1; mm += 1; } if (mm == 60) { mm = 0; hh += 1; } setTimeout(function() { drawSS(); }, 1000); } drawSS(); </script> </body></html>

精簡版:

<!DOCTYPE html><html> <head> <meta charset='UTF-8'> <title>CSS3時鐘特效</title> <link rel='shortcut icon' type='image/x-icon' href='http://m.b3g6.com/bcjs/img/an.ico' /> <style> /*表盤邊框*/ .clock { /* 設(shè)置大小 */ width: 400px; height: 400px; position: relative; margin: 40px auto; /*上邊距*/ border-radius: 50%; /*圓形*/ box-shadow: 5px 5px 20px rgba(0, 0, 0, 0.5); /*表盤陰影*/ background: #F5DEB3; border: 10px solid #FFFF00; } /*畫刻度的面板*/ .box { width: 100%; height: 100%; position: absolute; top: 0; left: 0; } /*用來裝刻度的div*/ .box div { width: 0px; height: 200px; position: absolute; left: 200px; /*旋轉(zhuǎn)*/ transform: rotate(0deg); /*設(shè)置基點為右下角*/ transform-origin: bottom right; background: rgba(255, 0, 0, 0.5); } /*小刻度*/ .box div:after { content: ''; position: absolute; background: #484848; width: 2px; height: 10px; left: -1px; } /*大刻度*/ .box div.five:after { position: absolute; content: ''; width: 4px; height: 20px; left: -2px; top: 0; background: #484848; border-radius: 0 0 2px 2px; } /*秒針樣式*/ .second { width: 1px; height: 200px; background: red; position: absolute; left: 200px; /*距離表盤寬度一半*/ margin-top: 30px; z-index: 10; transform: rotate(0deg); transform-origin: center 170px; /*定位旋轉(zhuǎn)位置*/ } /*圓心樣式*/ .second:after { content: ''; position: absolute; width: 20px; height: 20px; background: red; border-radius: 50%; bottom: 20px; left: -10px; } /*分針樣式*/ .minute { width: 2px; height: 140px; background: #8b8b8d; position: absolute; left: 199px; margin-top: 60px; z-index: 9; transform-origin: center bottom; transform: rotate(12deg); } /*時針樣式*/ .hour { width: 6px; height: 100px; background: #333; position: absolute; left: 197px; margin-top: 100px; z-index: 8; border-radius: 3px; transform: rotate(2deg); transform-origin: center bottom; } </style> </head> <body> <div class='clock'> <div class='box'></div> <div class='second'></div> <div class='minute'></div> <div class='hour'></div> </div> <script> var box = document.getElementsByClassName('box')[0]; var ssObj = document.getElementsByClassName('second')[0]; var mmObj = document.getElementsByClassName('minute')[0]; var hhObj = document.getElementsByClassName('hour')[0]; /*獲取當(dāng)前時間*/ var date = new Date(); var hh = date.getHours(); var mm = date.getMinutes(); var ss = date.getSeconds(); /*計算頁面指針加載時的角度*/ drawSS(); // 定義初始刻度的度數(shù) var Deg = 0; /*畫刻度*/ for (var i = 0; i < 60; i++) { var div1 = document.createElement('div'); //創(chuàng)建一個div //當(dāng)為5時 if (i % 5 == 0) { //大刻度 div1.className = 'five'; } div1.style.transform = 'rotate(' + Deg + 'deg)'; box.appendChild(div1); Deg += 6;// 每兩個刻度之間是6度 } /*指針轉(zhuǎn)動的函數(shù)*/ function drawSS() { // 秒針的度數(shù) ssDeg = 360 * ss / 60; // 分針的度數(shù) mmDeg = 360 * mm / 60 + (6 * ss / 60); // 時針的度數(shù) hhDeg = 360 * (hh % 12) / 12 + (30 * mm / 60); // 旋轉(zhuǎn) hhObj.style.transform = 'rotate(' + hhDeg + 'deg)'; mmObj.style.transform = 'rotate(' + mmDeg + 'deg)'; ssObj.style.transform = 'rotate(' + ssDeg + 'deg)'; ss += 1; // 每秒鐘調(diào)用一次 setTimeout(function() { drawSS(); }, 1000); } </script> </body></html>

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: JavaScript
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩欧美自拍| 91一区二区三区四区| 精品精品国产三级a∨在线| 亚洲精品自拍| 欧美精选一区二区三区| 欧美成人a交片免费看| 国产成人免费| 欧美成人aaa| 久久激情五月婷婷| 四虎精品一区二区免费| 久久夜色精品| 91亚洲国产| 成人一区而且| 日韩av免费大片| 久久一区精品| 日本精品久久| 在线亚洲精品| 精品91久久久久| 亚洲性色视频| 欧美.日韩.国产.一区.二区 | 一区二区视频欧美| 91精品蜜臀一区二区三区在线| 国产伊人久久| 国产网站在线| 日韩av免费大片| 开心激情综合| 久久天堂影院| 精品国产三区在线| 91精品国产经典在线观看 | 日韩不卡一区| caoporn视频在线| 黄在线观看免费网站ktv| 激情偷拍久久| 五月精品视频| 三级亚洲高清视频| 日韩福利在线观看| 国产日韩欧美一区| 麻豆一区二区99久久久久| 国产一区丝袜| 岛国av在线网站| 欧美国产美女| 免费视频亚洲| 亚洲欧美成人综合| 亚洲美女91| 国产日韩欧美中文在线| 麻豆精品在线视频| 国产乱码午夜在线视频| 久久精品99久久无色码中文字幕| 99re国产精品| 欧美视频久久| 国产伦久视频在线观看| 久久国产影院| 亚洲欧美日韩国产综合精品二区| 亚洲视频播放| 青草久久视频| 日韩精品诱惑一区?区三区| 日韩中文字幕区一区有砖一区 | 欧美日韩国产综合网| 日韩成人午夜精品| 亚洲第一区色| 美女久久99| 亚洲午夜免费| 日韩精品一区二区三区免费观看| 日韩和欧美的一区| а√天堂8资源在线| 日韩精品亚洲专区| 日韩三区免费| 国产免费久久| 99riav1国产精品视频| 日韩1区2区| 欧美一区二区三区久久| 欧美特黄a级高清免费大片a级| 久久只有精品| 五月亚洲婷婷 | 国产亚洲毛片| 亚洲永久av| 久久99视频| 亚洲精品伊人| 91精品观看| 在线看片国产福利你懂的| 免费看欧美美女黄的网站| 日韩三区免费| 卡一精品卡二卡三网站乱码| 中文字幕日韩亚洲| 国精品一区二区| 热三久草你在线| 麻豆一区二区三| 欧美日本一区| 日韩中文字幕一区二区高清99| 少妇久久久久| 精品中文字幕一区二区三区四区| 日韩国产91| 中文一区一区三区免费在线观 | 麻豆一区二区99久久久久| 亚洲精品婷婷| 亚洲一区二区小说| 日韩午夜免费| 美女毛片一区二区三区四区| 亚洲伦乱视频| 另类专区亚洲| 四虎8848精品成人免费网站| 免费看久久久| 欧美一级网址| 日韩不卡一区二区三区| 蜜臀国产一区二区三区在线播放| 狠狠色综合网| 欧美中文一区二区| 日韩欧美午夜| 久久91导航| 日韩欧美一区二区三区在线观看| 成人精品久久| 蜜桃av在线播放| 日韩精品第一区| 日韩毛片视频| 91精品国产调教在线观看 | 日韩一区二区三区精品| 亚洲精品午夜av福利久久蜜桃| 99精品视频在线| 亚洲成人va| 久久一区二区三区电影| 亚洲无线一线二线三线区别av| 亚洲高清成人| 91成人精品| 丝袜国产日韩另类美女| 天堂va蜜桃一区二区三区| 国产精品美女久久久浪潮软件| 老鸭窝亚洲一区二区三区| 亚洲一区二区三区在线免费| 日韩一区二区三免费高清在线观看 | 久久国产亚洲| 一区二区三区视频免费观看| 一区二区三区四区在线看| 欧美精品一区二区久久| 亚洲一卡久久| 日韩一区网站| 欧美国产精品| 久久精品免视看国产成人| 超级白嫩亚洲国产第一| 日韩精品久久久久久久电影99爱| 波多野结衣一区| 日韩影院免费视频| 欧美精品中文| 激情综合五月| 亚洲国产成人精品女人| 亚洲香蕉久久| 国产精品www.| 欧美香蕉视频| 美女尤物久久精品| 91精品麻豆| 国产精品久久久久久久免费观看 | 一区久久精品| 亚洲精品极品| 国产精品nxnn| 涩涩av在线| 黄页网站一区| 日韩精品亚洲aⅴ在线影院| 国产精品红桃| 久久一级电影| 日韩精选在线| 91亚洲国产| 亚洲视频www| 国产精品久久久久久久免费软件| 中文字幕在线免费观看视频| 不卡av一区二区| 欧美一级全黄| 色偷偷色偷偷色偷偷在线视频| 亚洲一区国产一区| 久久不见久久见免费视频7 | 国模精品一区| 亚洲一区欧美二区| 国产高清视频一区二区| 久久精品99久久无色码中文字幕| 亚洲精品美女91| 吉吉日韩欧美| 中文字幕日韩欧美精品高清在线| 精品视频一区二区三区在线观看| 亚洲免费成人| 久久麻豆视频| 水野朝阳av一区二区三区| 麻豆精品在线观看| 日韩视频在线一区二区三区 | 精品国产成人| 欧美中文字幕| 国产福利片在线观看| 天堂av一区| 99精品视频在线| 国产精品白丝一区二区三区| 午夜欧美理论片| 精品免费在线| 亚洲影视一区二区三区| 国产精选在线| 青青伊人久久| 国内激情久久| 久久精品亚洲| 中文字幕亚洲在线观看| 播放一区二区| 乱一区二区av| 日韩av一区二区三区四区| 欧美99久久| 精品中文在线|