值班需要監控頁面情況,手頭也沒有專用的監控設備,只能手動刷新。遂度之,解放雙手。
代碼如下:
1 timeout=prompt("Set timeout (Second):"); 2 count=0 3 current=location.href; 4 if(timeout>0) 5 setTimeout('reload()',1000*timeout); 6 else 7 location.replace(current); 8 function reload(){ 9 setTimeout('reload()',1000*timeout); 10 count++; 11 console.log('每('+timeout+')秒自動刷新,刷新次數:'+count); 12 fr4me='<frameset cols=\'*\'>\n<frame src=\''+current+'\'/>'; 13 fr4me+='</frameset>'; 14 with(document){write(fr4me);void(close())}; 15 }
代碼使用說明:
這個代碼直接貼到chrome或者firefox的控制台中,輸入自動刷新的時間間隔(單位秒),即可實現自動刷新,直到你關掉頁面或者手工刷新界面為止。
代碼處理邏輯說明:
其實還是蠻巧妙的。這個刷新實際上並沒有直接用location.reload()之類的js方法直接強刷新頁面,而是用frame嵌套目標網頁鏈接的方式,通過重新加載frame的內容(就是current鏈接)來實現“自動刷新”。這樣子定時器可以一直運行在頁面,實現定時刷新了。
為什么不直接模擬刷新界面?原因很簡單,你要實現間隔刷新的效果的話,如果直接刷新,那你所設定的 定時器 在網頁刷新重新加載之后會被清掉。
那就不可以直接刷新網頁了:定時器都被清了,還怎么定時刷新?
當然,你也可以用chrome插件來實現。用插件開發可能更容易些,用戶體驗可能會更好。
轉自:https://blog.csdn.net/samt007/article/details/80014071 非常感謝