Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/479.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 检测navigator.online上的更改_Javascript_Onchange_Navigator - Fatal编程技术网

Javascript 检测navigator.online上的更改

Javascript 检测navigator.online上的更改,javascript,onchange,navigator,Javascript,Onchange,Navigator,如何检测导航器是否将您的状态更改为联机/脱机 比如: var oldState = navigator.onLine; window.navigator.onlinechange = function(evnt,newState) { alert('your changed from' + oldState + ' to' + newState + 'state'); } 类似于此(并非每个浏览器都支持这些事件,目前只有IE 8、9和FF>3支持这些事件): 浏览器支持各

如何检测导航器是否将您的状态更改为联机/脱机

比如:

var oldState = navigator.onLine; 
window.navigator.onlinechange = function(evnt,newState) { 
         alert('your changed from' + oldState + ' to' + newState + 'state');
}
类似于此(并非每个浏览器都支持这些事件,目前只有IE 8、9和FF>3支持这些事件):


浏览器支持各不相同,请查看:

如果需要更兼容跨浏览器,则必须轮询navigator.onLine属性

var status = document.getElementById('status')

setInterval(function () {
  status.innerHTML = navigator.onLine ? 'online' : 'offline';  
}, 250);
演示:

借助body上的类和此代码,您可以找到

window.ononline = function() {
    alert('You are now online');
}

window.onoffline = function() {
    alert('You are now offline');
}

事实上,navigator.onLine不显示internet可用性。它只显示您的计算机是否连接到任何网络。改用。它有相应的回调,只包括到porject的online.js和设置window.onLineHandler和window.offLineHandler函数。这不适用于跨浏览器…只有Chrome在连接丢失时才能正确设置navigator.online。如果您删除internet连接,Safari和Firefox都不会将标志设置为false。这很有效,谢谢
window.ononline = function() {
    alert('You are now online');
}

window.onoffline = function() {
    alert('You are now offline');
}