JS中的Navigator 對象

Navigator 對象包含有關瀏覽器的信息。android

不少時候咱們須要在判斷網頁所處的瀏覽器和平臺,Navigator爲咱們提供了便利ios

Navigator常見的對象屬性以下:web

屬性 描述
appCodeName 返回瀏覽器的代碼名。
appMinorVersion 返回瀏覽器的次級版本。
appName 返回瀏覽器的名稱。
appVersion 返回瀏覽器的平臺和版本信息。
browserLanguage 返回當前瀏覽器的語言。
cookieEnabled 返回指明瀏覽器中是否啓用 cookie 的布爾值。
cpuClass 返回瀏覽器系統的 CPU 等級。
onLine 返回指明系統是否處於脫機模式的布爾值。
platform 返回運行瀏覽器的操做系統平臺。
systemLanguage 返回 OS 使用的默認語言。
userAgent 返回由客戶機發送服務器的 user-agent 頭部的值。
userLanguage 返回 OS 的天然語言設置。

咱們使用的比較多的是他的userAgent,常常須要判斷的狀況有:瀏覽器

(1)PC仍是移動端服務器

(2)安卓仍是IOScookie

(3)瀏覽器的類型app

示例代碼:ide

 1 var browser={  2     versions:function(){  3         var u = navigator.userAgent, app = navigator.appVersion;  4         return {         //移動終端瀏覽器版本信息
 5               trident: u.indexOf('Trident') > -1, //IE內核
 6               presto: u.indexOf('Presto') > -1, //opera內核
 7               webKit: u.indexOf('AppleWebKit') > -1, //蘋果、谷歌內核
 8               gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐內核
 9               mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否爲移動終端
10               ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios終端
11               android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android終端或uc瀏覽器
12               iPhone: u.indexOf('iPhone') > -1 , //是否爲iPhone或者QQHD瀏覽器
13               iPad: u.indexOf('iPad') > -1, //是否iPad
14               webApp: u.indexOf('Safari') == -1 //是否web應該程序,沒有頭部與底部
15  }; 16  }(), 17     language:(navigator.browserLanguage || navigator.language).toLowerCase() 18 }

判斷是否移動端spa

1 if(browser.versions.mobile){ 2 console.log('我是移動端'); 3 }

還能夠用另外一種方式判斷操作系統

1 var s=document.hasOwnProperty("ontouchstart");//電腦返回false,手機爲true
2 console.log(s);

 

判斷安卓仍是IOS

1 if(browser.versions.ios){ 2      console.log('我是IOS'); 3 } 4 if(browser.version.andriod){ 5      console.log('我是安卓'); 6 }

判斷瀏覽器的類型

 1 if(browser.versions.trident){  2     console.log('我是IE');  3 }  4 if(browser.versions.presto){  5     console.log('我是opera');  6 }  7 if(browser.versions.webKit){  8     console.log('我是蘋果和谷歌');  9 } 10 if(browser.versions.gecko){ 11     console.log('我是火狐'); 12 }
相關文章
相關標籤/搜索