`
zccst
  • 浏览: 3291884 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[html5]navigator.online属性检测用户是否在线

阅读更多
作者:zccst

navigator.online属性检测用户是否在线

以前我写webapp时都是通过ajax的超市时间来测试用户是否在线的。
if (navigator.onLine) { 
    //在线
} 
else { 
    //离线状态
}

这个html5的 navigator的新特性可以搞定.navigator.onLine属性,值为true表示设备能上网,值为false表示设备离线。



同时我们还可以监听用户在线离线的动作
var el = document.body;
if (el.addEventListener) {
   window.addEventListener("online", function () {
     alert("online");}, true);
   window.addEventListener("offline", function () {
     alert("offline");}, true);
}
else if (el.attachEvent) {
   window.attachEvent("ononline", function () {
     alert("online");});
   window.attachEvent("onoffline", function () {
     alert("offline");});
}
else {
   window.ononline = function () {
     alert("online");};
   window.onoffline = function () {
     alert("offline");};
}


注意,检测ononline事件,要绑定在window对象上

截止到今天,最新的浏览器都能正确使用这个属性。

目前除了IE(IE只支持navigator.onLine属性)外,其他最新浏览器都支持这个事件。

http://www.w3.org/TR/2008/WD-html5-20080610/diff/offline.html#browser0

参考 http://www.ibm.com/developerworks/cn/web/1011_guozb_html5off/



github也有人封装了比较完备的方法  https://github.com/PixelsCommander/OnlineJS

参考  http://help.dottoro.com/ljnasgpu.php
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics