用window.navigator.userAgent來區分設備和瀏覽器


javascript的navigator對象

navigator為Window對象的一個屬性,指向了一個包含瀏覽器相關信息的對象。navigatot中包含了一些常用到的屬性,如   

navigator.appVersion 瀏覽器的版本號 

navigator.appName 瀏覽器的名稱 

navigator.language 瀏覽器使用的語言 

navigator.platform 瀏覽器使用的平台 

navigator.userAgent 瀏覽器的user-agent信息

 

其中userAgent 屬性是一個只讀的字符串,聲明了瀏覽器用於 HTTP 請求的用戶代理頭的值。

一般來講,它是在 navigator.appCodeName 的值之后加上斜線和 navigator.appVersion 的值構成的。

例如:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322)。

 

一些例子:

 

//判斷當前頁面所在的環境是不是微信內置瀏覽器

function isWeiXin() {

var ua = window.navigator.userAgent.toLowerCase();

if (ua.match(/MicroMessenger/i) == 'micromessenger') {

return true;

} else {

return false;

}

}

//判斷蘋果、安卓、pc

if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) { //判斷iPhone|iPad|iPod|iOS

  window.location.href ="iPhone.html";

} else if (/(Android)/i.test(navigator.userAgent)) { //判斷Android

  window.location.href ="Android.html";

} else { //pc

  window.location.href ="pc.html";

};

//正則表達式判斷瀏覽器類型

function userBrowser(){   

var browserName=navigator.userAgent.toLowerCase();   

if(/msie/i.test(browserName) && !/opera/.test(browserName)){   

alert("IE");   

return ;   

}elseif(/firefox/i.test(browserName)){   

alert("Firefox");   

return ;   

}elseif(/chrome/i.test(browserName) && /webkit/i.test(browserName) && /mozilla/i.test(browserName)){   

alert("Chrome");   

return ;   

}elseif(/opera/i.test(browserName)){   

alert("Opera");   

return ;   

}elseif(/webkit/i.test(browserName) &&!(/chrome/i.test(browserName) && /webkit/i.test(browserName) && /mozilla/i.test(browserName))){   

alert("Safari");   

return ;   

}else{   

alert("unKnow");   

    }   

}  



作者:年少追夢
鏈接:https://www.jianshu.com/p/9419df1e3f06
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM