国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

使用JS在瀏覽器中判斷當前網絡連接狀態的幾種方法

2024-05-06 16:36:58
字體:
來源:轉載
供稿:網友

使用JS在瀏覽器中判斷當前網絡狀態的幾種方法如下:

1. navigator.onLine

2. ajax請求

3. 獲取網絡資源

4. bind()

1. navigator.onLine

通過navigator.onLine判斷當前網絡狀態:

if(navigator.onLine){ ...}else{ ...}

非常簡單,但是并不準確-根據MDN的描述:

navigator.onLine只會在機器未連接到局域網或路由器時返回false,其他情況下均返回true。

也就是說,機器連接上路由器后,即使這個路由器沒聯通網絡,navigator.onLine仍然返回true。

2. ajax請求

采用get請求的方式,根據返回值判斷是否能夠成功get到數據,從而確定當前的網絡狀態:

$.ajax({ url: 'x.html', success: function(result){  ... },  error: function(result){  ... }});

3. 獲取網絡資源

原理同2,在頁面放一張隱藏圖片,設置其onerror函數(獲取圖片資源失敗時會調用該函數):

<script src="./jquery-3.1.1.min.js"></script><script>function getImgError(){ alert("Network disconnect!");}$().ready(function(){ $("#btn-test").click(function(){  var imgPath = "https://www.baidu.com/img/bd_logo1.png";  var timeStamp = Date.parse(new Date());  $("#img-test").attr("src", imgPath + "?timestamp=" + timeStamp); });});</script><body> <img id="img-test" style="display:none;" onerror="getImgError()"/> <button id="btn-test">check status</button></body>

每次點擊button時,更新該圖片的src。若獲取圖片失敗,則認為網絡連接失敗

這種判斷網絡狀態的準確完全取決于圖片資源是否穩定。。。

4. bind()

原理同1:

var netStatue = true;$(window).bind('online', function(){ netStatue = true;});$(window).bind('offline', function(){ netStatue = false;});...if(netStatue){ ...}else{ ...}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 娄底市| 西峡县| 宁武县| 比如县| 禄劝| 临洮县| 潜江市| 安达市| 定州市| 晋城| 乌兰察布市| 西乌珠穆沁旗| 特克斯县| 凤山县| 同江市| 揭东县| 古交市| 盱眙县| 丹寨县| 丰台区| 崇明县| 武宣县| 滨海县| 盐池县| 马龙县| 株洲县| 台南县| 两当县| 新乡县| 新乡市| 贡嘎县| 玉山县| 旅游| 定南县| 陈巴尔虎旗| 胶州市| 确山县| 阳谷县| 济南市| 临颍县| 灵宝市|