H5案例分享:使用JS判斷客戶端、瀏覽器、操做系統類型

 

使用JS判斷客戶端、瀏覽器、操做系統類型android

 

1、JS判斷客戶端類型ios

  JS判斷客戶端是不是iOS或者Android手機移動端瀏覽器

  經過判斷瀏覽器的userAgent,用正則來判斷手機是不是ios和Android客戶端。微信

核心代碼以下:網站

方法一:操作系統

var u = navigator.userAgent;
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android終端
var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios終端
if (isAndroid) {
  alert('這是Android');
}
if (isiOS) {
  alert('這是IOS');
}orm

 

掃碼體驗:ip

 

方法二:ci

if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
  //alert(navigator.userAgent);
  alert('這是IOS');
} else if (/(Android)/i.test(navigator.userAgent)) {
  //alert(navigator.userAgent);
  alert('這是Android');
} else {
  alert('這是PC');
};io

掃碼體驗:

 

2、JS檢測是否在微信打開

   使用js 能夠經過 window.navigator.userAgent 來獲取瀏覽器的相關信息,那麼咱們也能夠經過該方法來獲取微信內置瀏覽器的相關信息。根據關鍵字 MicroMessenger 來判斷是不是微信內置的瀏覽器。

核心代碼以下:

function is_weixn(){
  var ua = navigator.userAgent.toLowerCase();
  if(ua.match(/MicroMessenger/i)=='micromessenger') {
    alert('在微信裏打開');
  } else {
     alert('不在微信裏打開');
  }
}
is_weixn();

掃碼體驗:

3、JS判斷操做系統類型

   在經過Javascript實現客戶端和服務端的交互時,有時候須要對操做系統進行判斷,以便實現不一樣操做系統下的兼容性,好比:咱們有一個網站, 在Windows下瀏覽效果良好,可是到了Linux下,因爲許多特性不一樣,會形成在瀏覽上的細微差別,甚至會影響到良好的用戶體驗。這個時候咱們就須要利用 Javascript對操做系統的類型以及某些特性進行判斷,分而治之,從而實現網站在跨平臺瀏覽時候保持良好的用戶體驗。

下邊是對Windows、Mac、Linux、Unix擦做系統進行判斷的JS核心代碼:

function detectOS() {
  var sUserAgent = navigator.userAgent;
  var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows");
  var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh") || (navigator.platform == "MacIntel");
  if (isMac) return "Mac";
  var isUnix = (navigator.platform == "X11") && !isWin && !isMac;
  if (isUnix) return "Unix";
  var isLinux = (String(navigator.platform).indexOf("Linux") > -1);
  if (isLinux) return "Linux";
  if (isWin) {
    var isWin2K = sUserAgent.indexOf("Windows NT 5.0") > -1 ||sUserAgent.indexOf("Windows 2000") > -1;
    if (isWin2K) return "Win2000";
    var isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows XP") > -1;
    if (isWinXP) return "WinXP";
    var isWin2003 = sUserAgent.indexOf("Windows NT 5.2") > -1 || sUserAgent.indexOf("Windows 2003") > -1;
    if (isWin2003) return "Win2003";
    var isWinVista= sUserAgent.indexOf("Windows NT 6.0") > -1 || sUserAgent.indexOf("Windows Vista") > -1;
    if (isWinVista) return "WinVista";
    var isWin7 = sUserAgent.indexOf("Windows NT 6.1") > -1 || sUserAgent.indexOf("Windows 7") > -1;
    if (isWin7) return "Win7";
  }
   return "other";
}

alert("您的操做系統是:" + detectOS());

相關文章
相關標籤/搜索