2014-03-05 25 views
-1

此代碼應該給我的秒數,直到3月20日,2014年它的工作在我的電腦上很好,但它並不在我的iPad上運行。
它給我在Safari和鉻的NaN。
什麼可能是錯的?這個劇本給了我楠的iPad

function timer() { 
    var day = "20"; 
    var month = "03"; 
    var year = "2014"; 
    var hour = "00"; 
    var minute = "00"; 
    var second = "00"; 

    var ToDate = new Date(month+ ","+day+","+year+" "+hour+":"+minute+":"+second); 
    var now = Date.now(); 
    var NewDate = ToDate - now; 

    var SecCount = Math.round(NewDate/1000); 
    document.write(SecCount); 
    setTimeout(timer,1000); 
} 

這個問題是有點在這裏一樣:Javascript age calculation on IPad,但我不知道如何實現代碼

date = date.replace(/-/,"/").replace(/-/,"/"); //substitute - with/

到我的代碼。
感謝

附:這是該網站的鏈接:http://ss-cal.com/lab

+0

此處複製/粘貼的文字有引號,而不是直引號:'var day =「20」' – Jorg

+0

http://stackoverflow.com/a/7712063/2763709這個答案已經給出了..只是按照 –

+0

@ jorg執行,只是修正了這個問題,而且代碼在iPad上仍然不起作用。 – AqeelAT

回答

2

你試過var ToDate = new Date(year, month, day, hour, minute, second);創建Date對象?

它而不必解析從字符串值創建日期對象的另一種方式。既然你已經有了他們分開它甚至可能會更快。

請注意,開始計數個月從0 =月3 =月,而不是行軍

看到這個搗鼓了幾個選擇:http://jsfiddle.net/52XH2/2/

// ISO standard format 
var ToDate = new Date(year + "-" + month + "-" + day + "T" + hour + ":" + minute + ":" + second); 
var now = Date.now(); 
console.log(ToDate.toString()); 
var NewDate = ToDate - now; 

參考見本: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

相關問題