成人免费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免费在线观看 | 天天综合网天天综合色 | 日本不卡一区二区三区在线观看 | 亚洲天堂一区 | 国产欧美一区二区三区日本久久久 | 久久精品视频在线观看 | 国产精品一区二区三区久久久 | 亚洲电影中文字幕 | 天天爽网站 | 中文字幕一级 | 日日噜 | 手机看片在线播放 | 成人h动漫亚洲一区二区 | 91精品国产色综合久久 | 亚洲狠狠 | 亚洲一区在线日韩在线深爱 | www.精品国产 | 精品91视频 | 亚洲一区二区久久 | 91国内精品久久 | 精品乱码一区二区三四区 | 极品久久| 亚洲精品久久久久久久久久久久久 | 午夜免费在线观看 | 成年人网站在线观看视频 | 两性午夜视频 | 欧美视频在线一区 | 一区二区视频 | 成人午夜激情 | 成人激情视频免费观看 | av中文字幕在线 | 美女毛片免费看 | 亚洲欧美高清 | 激情91| 色在线免费 | 免费av一区二区三区 | 欧美精品a∨在线观看不卡 欧美日韩中文字幕在线播放 | 国产探花在线精品一区二区 | 日韩1区2区| 欧美一区二区在线看 |