JavaScript工作在IE和Edge上,但不适用于Chrome和Firefox

JavaScript工作在IE和Edge上,但不适用于Chrome和Firefox

问题描述:

这对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> 
+3

[**为什么我们会大喊大叫?**](https://meta.stackoverflow.com/questions/262688/preventing-all-caps-question-titles-and-bodies)说真的,你”如果你没有把每一个单词的大写**都发现问题更容易阅读。 –

+0

包含“strong text”的行在JavaScript中无效。此外,'t'的值是NaN,因此具有此值的数学也将是NaN –

+0

'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)全部解释 –

试图从一种新的方法解决问题,做到了。

<html> 
<head> 
    <script> 

      var t = parseFloat(3600000); 

      var myvar=setInterval(myfunc,1000); 

      function myfunc() 
      { 
      if(t>0) 
      { 
      var seconds = parseFloat(Math.floor((t/1000) % 60).toString()); 
      var minutes = parseFloat(Math.floor((t/1000/60) % 60).toString()); 
      var hours = Math.floor((t/(1000*60*60)) % 24); 
      var days = Math.floor(t/(1000*60*60*24)); 
      document.getElementById("div1").innerHTML=minutes+":"+seconds; 

      t=t-1000; 
      };} 
    </script> 
</head> 
<body> 
<p id="demo"></p> 
<div id="div1"></div> 
</body> 
</html>