[英]JavaScript working on IE and Edge but not working on Chrome and Firefox
This is working fine on IE and Edge but showing NaN:NaN in Chrome and Firefox. 在IE和Edge上运行正常,但在Chrome和Firefox中显示NaN:NaN。 Please provide reason and correct solution for it I am trying to show only one hour decreasing time. 请提供原因和正确的解决方案,我尝试仅减少一小时。
<!--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>
tried to solve a problem from a new approach and done it. 尝试通过新方法解决问题并做到了。
<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>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.