我想要一个60秒的倒计时器,之后页面会刷新
编辑:我需要在网页上显示可见倒计时。但显然页面不能每秒刷新一次,以便更改计时器
答案 0 :(得分:2)
这是一个简单的递归倒计时功能:
function countdown(time,endcallback,stepcallback)
{
if (time == 0) endcallback();
else {
time--;
stepcallback(time);
window.setTimeout(function() {
countdown(time,callback);
},1000);
}
}
countdown(60,function() {
window.location.reload();
},function(time) {
// display counter on page or do something else
});
编辑:这样更性感:)
答案 1 :(得分:1)
在html文档的<META HTTP-EQUIV="refresh" CONTENT="60"/>
部分中使用<head>
是否足够?您可以阅读更多about it here
答案 2 :(得分:0)
使用元刷新:http://en.wikipedia.org/wiki/Meta_refresh
请注意,这是一种hacky方法,并且可能有更优雅的解决方案,具体取决于您要实现的目标。
答案 3 :(得分:0)
<div id='countdown'>60</div>
$(function() {
var cd = $('#countdown');
var c = parseInt(cd.text(),10);
var interv = setInterval(function() {
c--;
cd.html(c);
if (c == 0) {
window.location.reload(false);
clearInterval(interv);
}
}, 1000);
});
抱歉没有注意到你第一次需要一个可见的计数器..所以我编辑了答案
工作demo
答案 4 :(得分:0)
使用以下代码:
http://javascript.internet.com/time-date/countdown-timer.html
您只需要修改以下内容
if((mins == 0) && (secs == 0)) {
window.alert("Time is up. Press OK to continue."); // change timeout message as required
// window.location = "yourpage.htm" // redirects to specified page once timer ends and ok button is pressed
}
类似于:
if((mins == 0) && (secs == 0)) {
window.location.reload();
}