WorkerNavigator: onLine 屬性
注意:此功能僅在 Web Workers 中可用。
返回瀏覽器的線上狀態。該屬性返回一個布林值,true 表示線上,false 表示離線。當瀏覽器連線到網路的可用性發生變化時,該屬性會發送更新。當用戶點選連結或指令碼請求遠端頁面時,會發生更新。
例如,當用戶在失去網際網路連線後不久點選連結時,該屬性應返回 false。
瀏覽器對該屬性的實現方式不同。
在 Chrome 和 Safari 中,如果瀏覽器無法連線到本地區域網路 (LAN) 或路由器,則表示離線;所有其他情況都返回 true。因此,雖然您可以假設當瀏覽器返回 false 值時表示離線,但您不能假設 true 值一定意味著瀏覽器可以訪問網際網路。您可能會得到誤報,例如計算機執行虛擬化軟體,該軟體具有始終“連線”的虛擬乙太網介面卡。因此,如果您確實想確定瀏覽器的線上狀態,則應開發額外的檢查方法。要了解更多資訊,請參閱 2011 年的文章 在離線狀態下工作。
在 Firefox 中,將瀏覽器切換到離線模式會發送一個 false 值。
值
online 是一個布林值,true 或 false。
示例
基本用法
要在 worker 中檢查您是否線上,請查詢 navigator.onLine,如下例所示
js
if (navigator.onLine) {
console.log("online");
} else {
console.log("offline");
}
如果瀏覽器不支援 navigator.onLine,則以上示例將始終顯示為 false/undefined。
監聽網路狀態的變化
要檢視網路狀態的變化,請使用 addEventListener 來監聽 online 和 offline 事件,如下例所示
js
addEventListener("offline", (e) => {
console.log("offline");
});
addEventListener("online", (e) => {
console.log("online");
});
規範
| 規範 |
|---|
| HTML # dom-navigator-online-dev |
瀏覽器相容性
載入中…