sta*_*low 2 javascript jquery page-refresh
我有一个网页,我希望它每2分钟刷新一次,使用以下代码:
location.reload();
Run Code Online (Sandbox Code Playgroud)
问题是我假设用户已连接; 但如果发生了他/她没有在线连接,页面将失败并给出默认浏览器(没有连接错误页面); 并且除了用户手动之外,页面永远不会刷新
我可以包括ping机制来决定是否刷新天气?
您可以使用它navigator.onLine来检测网络连接
setInterval(function() {
if (navigator.onLine) {
location.reload();
}
}, 120000); /* 120000 ~> 2 minutes */
Run Code Online (Sandbox Code Playgroud)
否则,您可以使用HEADajax请求到同一域资源,并仅在响应返回200/304状态时刷新页面,例如
setInterval(function() {
$.ajax({
url : "/favicon.ico", /* or other resource */
type : "HEAD"
})
.done(function() {
location.reload();
});
}, 120000); /* 120000 ~> 2 minutes */
Run Code Online (Sandbox Code Playgroud)