0
這對IE和Edge很有效,但在Chrome和Firefox中顯示NaN:NaN。請提供理由和正確的解決方案 我想顯示只有一個小時的減少時間。JavaScript工作在IE和Edge上,但不適用於Chrome和Firefox
<!--HERE IS MY CODE-->
<!--THE CODE CREATIN ERROR-->
<html>
<head>
<script>
endtime="31/12/2015";
var myvar=setInterval(myfunc,1000);//function calling after every 1 second
var d=new Date();
d.setHours(14);
d.setMinutes(00);
k=00;
j=01;
function myfunc()
{strong text
d.setSeconds(k);
k++;
if(k==60)
{
d.setMinutes(j);
k=00;
j++;
}
var t = parseFloat(Date.parse(endtime) - Date.parse(d));
var seconds = Math.floor((t/1000) % 60);
var minutes = Math.floor((t/1000/60) % 60);
var hours = Math.floor((t/(1000*60*60)) % 24);
var days = Math.floor(t/(1000*60*60*24));
document.getElementById("div1").innerHTML=minutes.toString()+":"+seconds.toString();/*HERE IT IS SAYING NAN:NAN IN CHROME AND FIREFOX*/
}
</script>
</head>
<body>
<p id="demo"></p>
<div id="div1"></div>
</body>
</html>
[**爲什麼我們會大喊大叫?**](https://meta.stackoverflow.com/questions/262688/preventing-all-caps-question-titles-and-bodies)說真的,你」如果你沒有把每一個單詞的大寫**都發現問題更容易閱讀。 –
包含「strong text」的行在JavaScript中無效。此外,'t'的值是NaN,因此具有此值的數學也將是NaN –
'Date.parse'僅保證解析代表RFC2822或ISO 8601日期的字符串 - 其他不同格式可能受不同瀏覽器支持,但沒有保證。顯然,IE/Edge支持'dd/mm/yyyy'(「2015年12月31日」) - 其他瀏覽器不支持 - [文檔](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Date/parse)全部解釋 –