WebMix

使用 JS 取得目前的網路連線狀態,及事件監聽

使用 JS 當中的 navigator.onLine,可以用來取得目前的連線狀態。

另外關於事件監聽的部份,可撰寫以下原始碼來監聽 onine 事件及 offline 事件:

window.addEventListener("online", function(){
  console.log("恢復網路連線時,觸發 online 事件");
});

window.addEventListener("offline", function(){
  console.log("失去網路連線時,觸發 offline 事件");
});

實際測試

可關掉網路連線、恢復網路連線,然後觀察以下的文字:

目前的網路連線狀態:


實際測試的原始碼如下:

$(function(){ // DOMContentLoaded 事件

  if(navigator.onLine){ // 目前的網路連線狀態
    $("#network_status").removeAttr("class").addClass("have_network").html("有網路連線");
  }else{
    $("#network_status").removeAttr("class").addClass("no_network").html("無網路連線");
  }
 
});
window.addEventListener("online", function(){ // 有網路連線時,觸發 online 事件
  $("#network_status").removeAttr("class").addClass("have_network").html("有網路連線");
});
window.addEventListener("offline", function(){ // 沒有網路連線時,觸發 offline 事件
  $("#network_status").removeAttr("class").addClass("no_network").html("無網路連線");
});