1

我正在使用以下脚本来检查互联网连接。如果结果是“在线”或结果是“离线”,我想要做点什么。

<body>
  <p><span id="status">checking...</span></p>

<script>
var statusElem = document.getElementById('status')

setInterval(function () {
  statusElem.className = navigator.onLine ? 'online' : 'offline';
  statusElem.innerHTML = navigator.onLine ? 'online' : 'offline';  
}, 250);
</script>
</body>

有任何想法吗?基本上我想使用一个 IF 语句: IF online then, else ..

4

1 回答 1

1

使用您的间隔代码:

setInterval(function () {
    if(navigator.onLine) {
        statusElem.className = 'online';
        statusElem.innerHTML = 'online';
    } else {
        statusElem.className = 'offline';
        statusElem.innerHTML = 'offline';
   }
}, 250);

online但是,您可以通过使用/offline事件侦听器更优雅地做同样的事情:

window.addEventListener("offline", function () {
    statusElem.className = 'offline';
    statusElem.innerHTML = 'offline';
}, false);

window.addEventListener("online", function () {
    statusElem.className = 'online';
    statusElem.innerHTML = 'online';
}, false);
于 2012-12-28T15:20:56.993 回答