成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

用JavaScript檢測用戶是否在線

開發 前端
我們可以利用navigator.onLine API來檢測連接狀態,它返回一個布爾值來表示用戶是否在線。這種方式,我們不知道加載后網絡狀態是否發生變化,這并不理想。

有時候,我們需要知道當前網絡的狀態來做一些事情,以提升用戶體驗,這節課,我們來看一下,如何使用 JavaScript 來檢測用戶是否在線。

檢測連接狀態

我們可以利用navigator.onLine API來檢測連接狀態,它返回一個布爾值來表示用戶是否在線。

注意:請注意各瀏覽器的實現方式不同,因此結果可能不同。

window.addEventListener('load', () => {
const status = navigator.onLine;
});

這種方式,我們不知道加載后網絡狀態是否發生變化,這并不理想。

我們可以訂閱 offline? 和 online 

window.addEventListener('offline', (e) => {
console.log('offline');
});

window.addEventListener('online', (e) => {
console.log('online');
});

事例

我們通過一個背景色的變化來演示當前的網絡狀態:

<div class="status">
<div class="offline-msg">You're offline ??</div>
<div class="online-msg">You're connected ??</div>
</div>

對應的 css:

.status {
background: #efefef;
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
div {
padding: 1rem 2rem;
font-size: 3rem;
border-radius: 1rem;
color: white;
font-family: Roboto, 'Helvetica Neue', Arial, sans-serif;
}
.online-msg {
background: green;
display: block;
}
.offline-msg {
background: red;
display: none;
}
}

默認情況下,顯示在線信息。然后我們添加一個條件,如果狀態元素有一個 offline 類,我們就切換這兩個div。

.status {
&.offline {
.online-msg {
display: none;
}
.offline-msg {
display: block;
}
}
}

那么,我們如何根據網絡狀態來切換呢:

const status = document.querySelector('.status');
window.addEventListener('load', () => {
const handleNetworkChange = () => {
if (navigator.onLine) {
status.classList.remove('offline');
} else {
status.classList.add('offline');
}
};

window.addEventListener('online', handleNetworkChange);
window.addEventListener('offline', handleNetworkChange);
});

代碼很簡單,這里就不過多的介紹了。

圖片

事例地址:https://codepen.io/rebelchris/pen/PoaQjqr

原文:https://dev.to/dailydevtips1/detecting-if-the-user-is-online-with-javascript-58ne

責任編輯:武曉燕 來源: 大遷世界
相關推薦

2013-06-09 14:12:42

監控

2021-03-18 18:07:57

JavaScript開發代碼

2010-06-18 13:36:49

SQL Server查

2011-11-04 12:00:38

2011-12-05 15:21:58

Knockout

2010-08-26 10:41:07

2021-04-29 00:08:21

JavaScript 檢測文件

2021-05-08 00:00:27

JavaScript ZIP文件

2021-01-28 18:06:49

JavaScriptCookieWeb

2021-03-27 11:02:04

JavaScript隊列編程語言

2024-04-28 09:12:16

CSS文本是否溢出前端

2009-06-05 11:11:11

2009-04-28 00:44:03

2021-12-01 06:42:51

BruteLoops身份驗證密碼

2010-06-11 16:04:34

Windows 7驅動

2011-03-03 09:02:29

JavaScriptPHPAndroid

2011-03-03 12:27:34

2020-10-15 12:24:00

JavaScript開發 教程

2011-07-20 17:29:12

iPhone 網絡

2015-04-16 15:14:54

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品一区二三区不卡 | 一级毛片视频 | 日韩成人av在线 | 国产精品小视频在线观看 | 久久精品久久综合 | 欧美日韩一区在线观看 | 热99| 成人影院在线观看 | 午夜精品福利视频 | 午夜精品久久久久久久星辰影院 | 一区在线观看视频 | 久久久久久免费观看 | 久久久久网站 | 亚洲 日本 欧美 中文幕 | 黄色av网站在线观看 | 久久综合av | 欧美舔穴| 国产精品91网站 | 国产视频第一页 | 亚洲一区毛片 | 97中文视频| 91视频在线看| a a毛片 | 不卡欧美 | 久久久久国产一区二区三区四区 | 国产精品久久久久无码av | 日韩欧美国产精品一区二区三区 | h免费观看 | 成人福利在线观看 | 在线欧美视频 | 国产精品欧美精品日韩精品 | 天堂久久一区 | 91欧美精品成人综合在线观看 | 日韩高清国产一区在线 | 精品不卡| 97国产精品视频人人做人人爱 | 亚洲网站在线观看 | 国产精品区一区二 | 精品av | 国产精品99一区二区 | 视频在线亚洲 |