我想检查 javascript 在运行时是否存在网络连接。我正在使用 window.navigator.onLine 但它不起作用。
<script language="javascript">
alert(window.navigator.onLine);
</script>
它总是返回真
我想检查 javascript 在运行时是否存在网络连接。我正在使用 window.navigator.onLine 但它不起作用。
<script language="javascript">
alert(window.navigator.onLine);
</script>
它总是返回真
你可以这样做:
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
}
}
}
您可以尝试使用具有短暂超时的 AJAX 调用并处理成功/错误。