看到《JavaScript高级程序设计》 23章离线应用于客户端存储,写道可以用navigator.onLine来检测当前网络状态。
于是顺手写了个判断:
if (navigator.onLine) {
alert("有网")
}else{
alert("没网");
};
可是当在chrome和火狐上,无论是否有网,都提示「有网」。在IE上能准确提示。
按说我的浏览器都是最新的,满足书上说的浏览器的要求,请问这有可能是怎么回事?
PHP中文网2017-04-10 15:15:55
这里有一些细节替楼主补充一下 :
Firefox
只与「脱机工作」开关有关,而跟你真的上不上得了网没有关系。
Chrome
取值并不是实时的,一般得等5秒左右。
其他一些细节题主可以访问 https://developer.mozilla.org/en-US/docs/Web/API/NavigatorOnLine/onLin... ,并且在 http://html5-demos.appspot.com/static/navigator.onLine.html 可以对这个 API 做一些简单的测试。