我想检查javascript中运行时是否存在网络连接。我正在使用window.navigator.onLine,但它不起作用。
<script language="javascript">
alert(window.navigator.onLine);
</script>
它总是返回
答案 0 :(得分:0)
您可以尝试使用短暂超时的AJAX调用并处理成功/错误。
答案 1 :(得分:0)
您可以按照以下方式执行此操作:
if (navigator.onLine) {
alert("online");
}
或如下:
var xhr = new XMLHttpRequest();
xhr.addEventListener('readystatechange', state_change, true);
xhr.open("GET", url, true);
xhr.send(null);
function state_change(){
if(xhr.readyState == 4){
if(xhr.status == 200){
console.log('worked');
} else if(xhr.status == 0) {
console.log('no internet');
} else {
// Some other error
}
}
}