<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
今天看到某網站的時間特別的醜陋,所以就誕生了寫一個看時間的炫酷的時鐘前端頁面。 特點就是炫酷,特效好,個人以心情愉快的感覺。 對於時間的變化,我打算使用翻頁的特效來完成,色系的話採用黑色以主題,給人一種神祕的感覺。
而且要獲取到原生的時間的資料來實時更新它的變化。
秉持著儘可能的美觀炫酷,與使用者的互動性好的原則,我初步的想法是,採用黑色系來增加可觀性,寫三個黑色框框分別代表小時,分鐘,秒,然後獲取到本地計算機或者伺服器的時間資料,進行動態變化,而且對於數位的變化,採用翻頁形式的改變對應的數位,從而增加可觀性。 這就是穩定初步想法:
首先需要定義一下最外面的框子(clock)和外面最大的背景的顏色(大小,形式,透明度等等): 基本的css如下:
.clock { display: grid; padding: 0 12px; grid-template-columns: 1fr 1fr 1fr; grid-column-gap: 12px; min-width: 200px; height: var(--clockheight); border-radius: var(--radius); background-image: linear-gradient( rgb(14, 14, 15) 0%, rgb(26, 25, 28) 20%, rgb(44, 44, 52) 50%, rgb(20, 20, 27) 100% ); box-shadow: inset 0 -3px 6px 3px rgba(0, 0, 0, 0.2), inset 0 4px 8px 3px rgba(0, 0, 0, 0.4), 0 2px 3px 1px rgba(255, 255, 255, 0.3), 0 -2px 4px 4px rgba(56, 56, 61, 0.5); }
最外面的盒子模型:
<div class="clock"> </div>
目前效果如下:
因為是炫酷的時鐘特效,外面首先要考慮的是對於時間的計算以及獲取的問題:思考一個問題,我們的目前時間可以很容易的從系統時間獲取,但是,翻頁與變化是需要我們額外的去控制的。所以需要我們額外的去寫的。
var date = new Date(); var seconds = date.getSeconds().toString(); if (seconds.length == 1) { seconds = "0" + seconds; } var minutes = date.getMinutes().toString(); if (minutes.length == 1) { minutes = "0" + minutes; } var hour = date.getHours(); if (hour > 12) { hour = hour - 12; } if (hour == 0) { hour = 12; } hour = hour.toString(); if (hour.length == 1) { hour = "0" + hour; } if ($(myhour[0]).text() !== hour) { flipNumber($(myhour[0]).closest(".flipper"), hour); } if ($(myminute[0]).text() !== minutes) { flipNumber($(myminute[0]).closest(".flipper"), minutes); } if ($(mysecond[0]).text() !== seconds) { flipNumber($(mysecond[0]).closest(".flipper"), seconds); }
為了適應變化,非同步變化的特性,我們需要額外寫一個延遲函數,來控制,不讓他們同時出現,增加可觀性:
setTimeout(function () { setTime(); }, 500);
當然,不要忘記第一步的引入工作,我們目前使用倆個前端框架,分別是jquery和bootstrap。這樣可以加快我們開發的速度。
<script type="text/javascript" src="https://repo.bfw.wiki/bfwrepo/js/jquery-3.2.1.min.js"></script> <script type="text/javascript" src="https://repo.bfw.wiki/bfwrepo/js/bootstrap.4.3.1.min.js"></script>
我們之前已經寫了背景的樣式與最外面的框子的樣式,現在我們的時,分,秒都還沒有寫,所以,我們把他分為三部分:
一個類似這樣的樣式效果,html程式碼樣式盒子如下:
<div class="flipper"> <div class="gear"></div> <div class="gear"></div> <div class="top"> <div class="text">00</div> </div> <div class="bottom"> <div class="text">00</div> </div> </div>
這樣重複3次,分別對應著時,分,秒,給他們佔位。
現在,我們的位置已經寫好樣式了,我們需要使用JavaScript來動態的填充更換我們的當時的時間數位:
function flipNumber(el, newnumber) { var thistop = el.find(".top").clone(); var thisbottom = el.find(".bottom").clone(); thistop.addClass("new"); thisbottom.addClass("new"); thisbottom.find(".text").text(newnumber); el.find(".top").after(thistop); el.find(".top.new").append(thisbottom); el.addClass("flipping"); el.find(".top:not(.new)").find(".text").text(newnumber); setTimeout(function () { el.find(".bottom:not(.new)").find(".text").text(newnumber); }, 500); }
最後的效果圖如下:
以上就是JS實現頁面炫酷的時鐘特效範例的詳細內容,更多關於JS頁面時鐘的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45