首頁 web前端 js教程 javascript檢測是否聯網的實作程式碼_javascript技巧

javascript檢測是否聯網的實作程式碼_javascript技巧

May 16, 2016 pm 04:35 PM
聯網

最簡單粗暴的方式就是載入網路資源,JS檔案或圖片檔案。

複製程式碼 程式碼如下:


typeof window.jQuery === "undefined" // return false or ture

用jQuery變數來偵測是否連網

function doConnectFunction() {
  return true;
}
function doNotConnectFunction() {
  return false;
}

 var i = new Image();
i.onload = doConnectFunction;
i.onerror = doNotConnectFunction;
i.src = 'http://su.bdimg.com/static/superplus/img/logo_white.png?d=' + escape(Date());
登入後複製

載入網路資源的問題就是偵測的互聯網,如果是區域網路偵測是無能為力了。
這時候需要一個更好的解決方案,就要用到navigator.onLine,這個屬性比較坑的就是瀏覽器相容,chrome、Safari 都完美支持,IE7以上是支援的。火狐和IE6比較坑,只有在瀏覽器「離線狀態」下才回傳false,其他都回傳true。掐了網路線都是true,Opera直接不支援了。

所以還要加上一個相容方法:給location.hostname位址發一個http頭請求,程式碼如下:

var xhr = new ( window.ActiveXObject || XMLHttpRequest )( "Microsoft.XMLHTTP" );
var status;
xhr.open( "HEAD", "//" + window.location.hostname + "/?rand=" + Math.floor((1 + Math.random()) * 0x10000), false );
 try {
  xhr.send();
  return ( xhr.status >= 200 && xhr.status < 300 || xhr.status === 304 );
 } catch (error) {
  return false;
 }
登入後複製

裡面一個要注意的就是open方法的第三個參數要傳false,必須是同步請求。

總結:支援navigator.onLine的瀏覽器就用navigator.onLine,不支援的就發一個http頭請求。

原創文章,轉載請註明: 轉載自前端開發

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.聊天命令以及如何使用它們
1 個月前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

介紹win11連網自動啟動的情況 介紹win11連網自動啟動的情況 Jan 01, 2024 pm 05:05 PM

有些使用者可能不太想直接啟動自己的win11系統,因此想要知道win11連網自動啟動嗎,其實是的,win11只要連網就會自動完成啟動。 win11聯網自動啟動嗎:答:win11聯網會自動啟動。 1.如果我們是首次安裝win11,那麼開啟並連網就會自動完成啟動了。 2.一些電腦在購買時會有啟動就無法退貨的選項,這時候要檢查就比較麻煩。 3.這時候需要在開機時使用電腦熱鍵,進入bios設置,在其中檢查電腦是否正常。 4.此外,如果我們是從win10升級的win11系統,那麼在升級安裝時,也會自動啟動。其實自動激

解決win11瀏覽器無法上網的方法 解決win11瀏覽器無法上網的方法 Jan 12, 2024 pm 09:48 PM

瀏覽器是我們瀏覽網頁時非常重要的工具,但是一些朋友在更新win11系統之後,發現自己的瀏覽器無法聯網了,這很可能是因為我們的瀏覽器更改了默認設置,只要打開Internet選項就可以解決了,下面一起來看看吧。 win11瀏覽器無法連網怎麼辦:1、首先我們點擊下發工作列的開始功能表開啟。 2、然後在上方搜尋框中搜尋並開啟「網路選項」3、開啟之後點選上方的「連線」4、在連線標籤下找到「區域網路設定」5、最後只要取消勾選其中的「為LAN使用代理伺服器」再點選下方「確定」即可。

win7連網提示錯誤代碼10107進行修復的操作內容 win7連網提示錯誤代碼10107進行修復的操作內容 Mar 26, 2024 pm 06:06 PM

1.按win+r進入運行窗口,輸入cmd,如圖所示:2、在dos窗口中,輸入SFC/SCANNOW,回車進行檢測,如圖所示:。 3.之後視窗會提示錯誤代碼:10107,然後接著輸入NETSHWINSOCKRESET,就可以了,如圖所示:4、然後將電腦重新啟動,開機後360會有一個提示,選擇允許即可。

繞過網路啟動的方法-Win11 繞過網路啟動的方法-Win11 Feb 18, 2024 am 11:38 AM

Win11如何跳過連網啟動隨著作業系統的不斷升級,Windows11成為了許多Windows作業系統使用者青睞的對象。相較於先前的版本,Win11提供了更流暢的使用者體驗和更多的新功能。然而,有些用戶可能在安裝Win11後遇到了連網啟動的問題。那麼如何跳過連網激活,讓Win11正常使用呢?首先,我們需要明確一點,Windows11的連網啟動是M

win10安全模式不能連網無法登陸教學課程 win10安全模式不能連網無法登陸教學課程 Jan 07, 2024 am 09:33 AM

很多用戶在使用電腦的時候,在電腦有問題的時候,都會需要進入安全模式,很多小夥伴都遇到過在安全模式卻不能連網了,這個棘手的問題該如何解決呢,快學習下吧。 win10安全模式不能連網:1、點選“開始”,找到“設定”。 2、點選「更新與安全性」。 3.點選左側的「恢復」選擇「立即重新啟動」。 4.進入安全操作後點選「疑難排解」5、選擇「高就選項」6、點選「啟動修復」7、點選「重新啟動」按鈕8、選擇第五項「啟用網路連線的安全模式」。 9.即可連網進入安全模式。

ChatGPT 上線聯網和插件功能,Plus 用戶下週可使用 ChatGPT 上線聯網和插件功能,Plus 用戶下週可使用 May 19, 2023 pm 10:22 PM

5月14日消息,OpenAI宣布將在下週為所有ChatGPTPlus用戶推出連網和插件功能。 OpenAICEOSamAltman轉發這則推文並表示:「希望你們喜歡」。此次更新意味著ChatGPT的最後一道封印已被徹底解除,ChatGPT將利用最新的資訊和資訊為使用者提供服務。 IT之家從OpenAI官方部落格獲悉,除了連網功能,即將上線的插件也大幅提升了ChatGPT的能力。粗略來看,目前上線的ChatGPT外掛程式種類涵蓋了行程安排助理、程式碼解釋器、建立新網站、文字轉音訊、購物比價

Google Bard 大升級超越 ChatGPT:這十個功能 ChatGPT 也做不到 Google Bard 大升級超越 ChatGPT:這十個功能 ChatGPT 也做不到 May 16, 2023 pm 07:49 PM

夕小瑤科技說原創作者|智商掉了一地、ZenMoore谷歌近期對OpenAI的ChatGPT發起衝鋒,在大模型方面奮起直追。不久之前咱們剛剛盤點了谷歌全家桶與Bard的聯動,在過去這一周裡Bard又一次發布了更新公告,並且在前幾天的谷歌I/O大會上,展示了PaLM2和Bard等新產品。這次的升級顯然邁出了更大一步:取消了waitlist,除英語外,還新增了日語和韓語兩種語言,目前在180多個國家和地區能夠直接訪問,可以切換外觀,推出了深色背景。此外,也推出了一些讓ChatGPT(非Plus版)望塵

WIN10系統不能連網的處理方法 WIN10系統不能連網的處理方法 Mar 27, 2024 pm 08:06 PM

1.透過快速組合鍵【win+r】開啟電腦的運作功能,然後輸入【cmd】點選確定。 2.在開啟的電腦指令介面輸入【netshwinsockreset】,點選鍵盤上的回車鍵。 3.等待載入成功後,進行電腦的重新啟動,點選電腦右下角的網路圖標,開啟網路共用中心,找到左側的【變更適配器設定】選項點選進入。 4.找到目前正在使用的網路連接,滑鼠右鍵、開啟視窗選擇【屬性】點選進入。 5.再開啟的視窗中找到【internet版本協定4】選項,點選【安裝】。 6、最後在出現的網路功能中,選擇協議,進行添加,並在添加完成後

See all articles