Navigator: onLine 屬性
Navigator 介面的 onLine 屬性返回裝置是否已連線到網路,true 表示線上,false 表示離線。該屬性的值會在瀏覽器檢查其網路連線後發生變化,通常是在使用者點選連結或指令碼請求遠端頁面時。例如,當用戶在失去網際網路連線後不久點選連結時,該屬性應返回 false。當其值發生變化時,會在 window 上觸發 online 或 offline 事件。
瀏覽器和作業系統利用不同的啟發式方法來確定裝置是否線上。通常,連線到區域網 (LAN) 被視為線上,即使該區域網可能沒有網際網路訪問。例如,計算機可能正在執行一個具有虛擬乙太網介面卡的虛擬化軟體,這些介面卡始終處於“連線”狀態。在 Windows 上,線上狀態取決於能否連線到 Microsoft 的某個伺服器,即使計算機可以訪問網際網路,該伺服器也可能被防火牆或 VPN 阻止。因此,此屬性本質上是不可靠的,您不應根據線上狀態停用功能,而只能在使用者似乎離線時提供提示。
值
布林值。
示例
基本用法
要檢查您是否線上,請查詢 window.navigator.onLine,如下例所示:
js
if (navigator.onLine) {
console.log("online");
} else {
console.log("offline");
}
如果瀏覽器不支援 navigator.onLine,則上述示例將始終顯示為 false/undefined。
監聽網路狀態的變化
要檢視網路狀態的變化,請使用 addEventListener 來監聽 window.online 和 window.offline 事件,如下例所示:
js
window.addEventListener("offline", (e) => {
console.log("offline");
});
window.addEventListener("online", (e) => {
console.log("online");
});
規範
| 規範 |
|---|
| HTML # dom-navigator-online-dev |
瀏覽器相容性
載入中…