2016-07-22 273 views
0

我有這個腳本的問題 -jquery.Countdown - 改變背景顏色

var date = new Date(new Date().valueOf() + 60 * 1000); 

    $('#clock').countdown(date) 
    .on('update.countdown', function(event) { 

    var format = '%M:%S'; 

    if(date < 30) { 

     $("#countcon").addClass('bg-teal-800'); 
    } 

    $(this).html(event.strftime(format)); 
    }) 
    .on('finish.countdown', function(event) { 
    $(this).html('This offer has expired!') 
    $("#countcon").removeClass('bg-teal-800'); 
    $("#countcon").addClass('bg-pink-800'); 
    }); 

我想如果日期<30秒改變DIV的背景顏色(countcoun),但其沒有作品對。

末變化的背景色(青色粉紅色),它的工作確定..

我試過 - 如果(event.offset.seconds < 30),但沒有任何反應太..(本倒計時開始與TEAL背景顏色

回答

1

你asigning一個數據對象在此行中的變量日期:

var date = new Date(new Date().valueOf() + 60 * 1000); 

嘗試添加以下行的asignment之後:

alert(data); 

這是什麼,然後顯示是一樣的東西:

Fri Jul 22 2016 11:59:14 GMT+0200 (CEST) 

這意味着你不可能比一切都交給30,如果這是真的,因爲它永遠不會執行命令。我猜你要檢查您是否定時器當前「第二」低於30,然後如果是這樣,你必須改變你的if語句來:

if(event.strftime('%S') < 30){} 

什麼event.strftime('%S')正在做的是返回倒數計時的當前時間格式化,僅能秒,諸如:

19 

然後可以相比,在if語句中的int 30。要檢查計時器的年,月,日,小時,分鐘......必須更改if語句中的時間格式,如'%S'代表秒。請參閱倒計時formatting-documentation

+0

首先對您的時間和幫助@ kevin-katze很感興趣。我按照你所說的插入代碼,但是警報給我帶來了從當前時間開始的秒數 - 而不是倒計時。倒計時開始於1:00 – DANIEL

+0

我編輯了我的答案。知道if語句應該按預期工作。請檢查更多問題。 –

+0

是的!非常簡單的解決方案!我嘗試了很多替代品,但沒有任何工作..很多! – DANIEL