2014-02-28 44 views
-1

我找到了this script在線並將我自己的圖片添加進去。唯一的問題是每當我嘗試刪除var seconds=Digital.getSeconds()它不再工作,這意味着它停止更新。Javascript時鐘無秒

但是,當我將腳本保持原始格式時,時鐘不會實時更新。我如何讓時鐘每分鐘更新一次?我只想要小時和分鐘。

+2

我看着那個代碼,想吐了。該代碼只是...令人厭惡。 –

+0

我以爲@NiettheDarkAbsol過度反應,但檢查代碼後,我認爲他是對的。時鐘的主要成分是'setInterval'函數和'Date'對象。 – A1rPun

+1

在刪除一個肯定使用後的變量聲明後,你期望什麼? –

回答

2

下面是這樣,其實正常工作的方式的代碼(雖然我還是不喜歡document.images ...但它會做)

var imgs = {}, i; 
for(i=0; i<10; i++) { 
    imgs[i] = new Image(); 
    imgs[i].src = "c"+i+".gif"; 
} 
imgs.blank = new Image(); imgs.blank.src = "cb.gif"; 
imgs.am = new Image(); imgs.am.src = "cam.gif"; 
imgs.pm = new Image(); imgs.pm.src = "cpm.gif"; 

function extract(h,m,s,dn){ 
    document.images.a.src = imgs[Math.floor(h/10) || "blank"].src; 
    document.images.b.src = imgs[h%10].src; 

    document.images.d.src = imgs[Math.floor(m/10)].src; 
    document.images.e.src = imgs[m%10].src; 

    document.images.g.src = imgs[Math.floor(s/10)].src; 
    document.images.h.src = imgs[s%10].src; 

    if(dn=="AM") document.images.j.src = imgs.am.src; 
    else document.images.j.src = imgs.pm.src; 
} 
function show3(){ 
    var Digital = new Date(), 
     h = Digital.getHours(), 
     m = Digital.getMinutes(), 
     s = Digital.getSeconds(), 
     dn = h >= 12 ? "PM" : "AM"; 
    extract(h%12 || 12, m, s, dn) 
    setTimeout(show3,1000); 
} 

現在,如果你想擺脫秒,註釋掉這些行:

// document.images.g.src = imgs[Math.floor(s/10)].src; 
// document.images.h.src = imgs[s%10].src; 

從你的HTML源代碼刪除gh圖像。

0

你不能刪除秒,他們需要每60秒增加分鐘。但是你可以選擇不顯示它們。 A1rPun表示,考慮到腳本,你可以使用setIntervalDate作爲腳本的更好結果。