值班需要监控页面情况,只能手动刷新。遂度之,解放双手。

 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链接)来实现“自动刷新”。这样子定时器可以一直运行在页面,实现定时刷新了。 为什么不直接模拟刷新界面?原因很简单,你要实现间隔刷新的效果的话,如果直接刷新,那你所设定的 定时器 在网页刷新重新加载之后会被清掉。 那就不可以直接刷新网页了:定时器都被清了,还怎么定时刷新?