此代码应显示HTML页面上的秒倒计时。 但它根本不起作用。 可能有什么不对? 我有点复制了网站上的代码,只是添加了一些细节。
function timer() {
var now = new Date().getFullYear;
var newdate = new Date("March, 19, 2014");
var SecCount = (newdate - now) / 1000;
SecCount = Math.round(SecCount);
if (SecCount === 1) {document.getElementById("days").innerHTML= "يوم واحد"; }
else if (SecCount === 2) {document.getElementById("days").innerHTML= "يومان"; }
else if (SecCount > 2 && SecCount < 10) {document.getElementById("days").innerHTML = (SecCount + " أيام"); }
else {document.getElementById("seconds").innerHTML = (SecCount + " يوم"); }
setTimeout(timer,1000);
}
答案 0 :(得分:0)
除了setTimeout之外,你是否从代码中的某个地方调用了timer()函数。您需要调用它来开始执行并调用setTimeout
答案 1 :(得分:0)
假设您想要变量'now'的完整日期,则应使用Date.now
。 getFullYear将仅返回2014,这将给您带来意想不到的结果。
此解决方案仅限于您希望倒计时至2014年3月19日。
// var now = new Date().getFullYear
var now = Date.now();
变量日计数不是以天的形式,而是应该是
// convert the seconds into days
var DayCount = Math.round(SecCount / (3600 * 24));
你是否调用该函数来启动超时循环?
timer();
答案 2 :(得分:0)
我写了一点fiddle来完成这项工作。
让%
运算符剩余时间非常有用!