值班需要监控页面情况,只能手动刷新。遂度之,解放双手。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
timeout=prompt("Set timeout (Second):");
count=0
current=location.href;
if(timeout>0)
setTimeout('reload()',1000*timeout);
else
location.replace(current);
function reload(){
setTimeout('reload()',1000*timeout);
count++;
console.log('每('+timeout+')秒自动刷新,刷新次数:'+count);
fr4me='<frameset cols=\'*\'>\n<frame src=\''+current+'\'/>';
fr4me+='</frameset>';
with(document){write(fr4me);void(close())};
}
|
代码使用说明:
这个代码直接贴到chrome或者firefox的控制台中,输入自动刷新的时间间隔(单位秒),即可实现自动刷新,直到你关掉页面或者手工刷新界面为止。
代码处理逻辑说明:
其实还是蛮巧妙的。这个刷新实际上并没有直接用location.reload()之类的js方法直接强刷新页面,而是用frame嵌套目标网页链接的方式,通过重新加载frame的内容(就是current链接)来实现“自动刷新”。这样子定时器可以一直运行在页面,实现定时刷新了。
为什么不直接模拟刷新界面?原因很简单,你要实现间隔刷新的效果的话,如果直接刷新,那你所设定的 定时器 在网页刷新重新加载之后会被清掉。
那就不可以直接刷新网页了:定时器都被清了,还怎么定时刷新?