您好,登錄后才能下訂單哦!
本文實例為大家分享了js實現圖片實時時鐘的具體代碼,供大家參考,具體內容如下
描述:
將下圖作為時間的背景,實現隨時時鐘的效果。
效果:
代碼:
<!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=[];//各數字的位置 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++){ //循環賦值各數字的位置 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) { //字符串轉化數組 if(arr.length===1) arr.unshift(0); return arr; } function setTimeDiv(elem,num) { //時間與圖片的對應 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>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。