js實(shí)現(xiàn)圖片實(shí)時時鐘
本文實(shí)例為大家分享了js實(shí)現(xiàn)圖片實(shí)時時鐘的具體代碼,供大家參考,具體內(nèi)容如下
描述:
將下圖作為時間的背景,實(shí)現(xiàn)隨時時鐘的效果。

效果:

代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
div div
{
float: left;
width: 30px;
font-size: 120px;
}
#hours0,#hours1,#minute0,#minute1,#second0,#second1
{
width: 200px;
height: 165px;
background-image: url("img/sztp.jpg");
}
</style>
</head>
<body>
<div>
<div id="hours0"></div>
<div id="hours1"></div>
<div>:</div>
<div id="minute0"></div>
<div id="minute1"></div>
<div>:</div>
<div id="second0"></div>
<div id="second1"></div>
</div>
<script>
var hours0,hours1,minute0,minute1,second0,second1;
var imgPositionList=[];//各數(shù)字的位置
init();
function init() {
hours0=document.getElementById("hours0");//小時1
hours1=document.getElementById("hours1");//小時2
minute0=document.getElementById("minute0");//分鐘1
minute1=document.getElementById("minute1");//分鐘2
second0=document.getElementById("second0");//秒針1
second1=document.getElementById("second1");//秒針2
for(var i=0;i<10;i++){ //循環(huán)賦值各數(shù)字的位置
if(i<5){ //第一排
imgPositionList.push({x:-i*208,y:0});
continue;
}
imgPositionList.push({x:-(i-5)*208,y:-173}) //第二排
}
console.log( imgPositionList);
imgPositionList.unshift(imgPositionList.pop());//將0 :最末尾的圖片 刪除 ,返回的值提到最前面。
setInterval(animation,16);
}
function animation() {
var date=new Date();
var hour=date.getHours().toString().split("").map(function (t) { return getNum(t) });
var minutes=date.getMinutes().toString().split("").map(function (t) { return getNum(t) });
var seconds=date.getSeconds().toString().split("").map(function (t) { return getNum(t) });
getDoubleArr(hour);
getDoubleArr(minutes);
getDoubleArr(seconds);
setTimeDiv(hours0,hour[0]);
setTimeDiv(hours1,hour[1]);
setTimeDiv(minute0,minutes[0]);
setTimeDiv(minute1,minutes[1]);
setTimeDiv(second0,seconds[0]);
setTimeDiv(second1,seconds[1]);
}
function getDoubleArr(arr) { //字符串轉(zhuǎn)化數(shù)組
if(arr.length===1) arr.unshift(0);
return arr;
}
function setTimeDiv(elem,num) { //時間與圖片的對應(yīng)
clone(elem.style,{
backgroundPositionX: imgPositionList[num].x+"px",
backgroundPositionY: imgPositionList[num].y+"px"
});
}
function getNum(str) {
if(isNaN(Number(str))) return str;
return Number(str);
}
function clone(target,source) {
for(var key in source){
target[key]=source[key];
}
}
</script>
</body>
</html>
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- js時鐘翻牌效果實(shí)現(xiàn)代碼分享
- JS實(shí)現(xiàn)圖片數(shù)字時鐘
- js實(shí)現(xiàn)一個簡單的數(shù)字時鐘效果
- JavaScript實(shí)現(xiàn)抖音羅盤時鐘
- html5 canvas js(數(shù)字時鐘)實(shí)例代碼
- 五步輕松實(shí)現(xiàn)JavaScript HTML時鐘效果
- 一個簡易時鐘效果js實(shí)現(xiàn)代碼
- JavaScript實(shí)現(xiàn)簡單的時鐘實(shí)例代碼
- 基于javascript實(shí)現(xiàn)動態(tài)時鐘效果
- js實(shí)現(xiàn)帶翻轉(zhuǎn)動畫圖片時鐘
相關(guān)文章
Javascript createElement和innerHTML增加頁面元素的性能對比
Javascript之createElement和innerHTML增加頁面元素的性能對比2009-09-09
Javascript表單序列化原理及實(shí)現(xiàn)代碼詳解
這篇文章主要介紹了Javascript表單序列化原理及實(shí)現(xiàn)代碼詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
推薦幾個不錯的console調(diào)試技巧實(shí)現(xiàn)
這篇文章主要介紹了推薦幾個不錯的console調(diào)試技巧實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
通過循環(huán)優(yōu)化 JavaScript 程序
這篇文章主要介紹了通過循環(huán)優(yōu)化 JavaScript 程序,對于提高 JavaScript 程序的性能這個問題,最簡單同時也是很容易被忽視的方法就是學(xué)習(xí)如何正確編寫高性能循環(huán)語句。下面我們來學(xué)習(xí)一下吧2019-06-06
js實(shí)現(xiàn)多選項(xiàng)切換導(dǎo)航菜單的方法
這篇文章主要介紹了js實(shí)現(xiàn)多選項(xiàng)切換導(dǎo)航菜單的方法,可實(shí)現(xiàn)動態(tài)生成多選項(xiàng)切換導(dǎo)航菜單的功能,是非常實(shí)用的技巧,需要的朋友可以參考下2015-02-02
JavaScript實(shí)現(xiàn)兩個數(shù)組的交集
這篇文章主要介紹了JavaScript實(shí)現(xiàn)兩個數(shù)組的交集,給定兩個數(shù)組???nums1???和??nums2??返回它們的交集,輸出結(jié)果中的每個元素一定是唯一的,下文詳細(xì)介紹,需要的小伙伴可以參考一下2022-03-03
JavaScript針對網(wǎng)頁節(jié)點(diǎn)的增刪改查用法實(shí)例
這篇文章主要介紹了JavaScript針對網(wǎng)頁節(jié)點(diǎn)的增刪改查用法,實(shí)例分析了JavaScript操作網(wǎng)頁節(jié)點(diǎn)的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-02-02

