检查javascript中是否存在网络连接

check if network connection exists in javascript

本文关键字:网络 连接 存在 是否 javascript 检查      更新时间:2023-09-26

我想在javascript中检查运行时是否存在网络连接。我正在使用window.navigator.onLine,但它不起作用。

<script language="javascript">
alert(window.navigator.onLine);
</script>

它总是返回true

您可以尝试使用一个短暂超时的AJAX调用来处理成功/错误。

您可以按如下方式执行:

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
        } 
   }
}