问题描述
|
我想要一个60秒的倒数计时器,然后页面刷新
编辑:我需要在网页上倒数可见。但显然页面无法每秒刷新以更改计时器
解决方法
这是一个简单的递归倒计时功能:
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
});
编辑:这样更性感:)
, 在HTML文档的“ 2”部分中使用“ 1”是否足够?你可以在这里读更多关于它的内容
, 使用元刷新:http://en.wikipedia.org/wiki/Meta_refresh
请注意,这是一种不讲究方法的方法,并且可能有更优雅的解决方案,具体取决于您要实现的目标。
, <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);
});
抱歉,没有注意到您第一次需要一个可见的柜台。。所以我编辑了答案
工作演示
, 使用以下代码:
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();
}