原文:https://www.cnblogs.com/huyihao/p/6003110.html

Navigator 对象包含有关浏览器的信息。

很多时候我们需要在判断网页所处的浏览器和平台,Navigator为我们提供了便利

Navigator常见的对象属性如下:

属性 描述
appCodeName 返回浏览器的代码名。
appMinorVersion 返回浏览器的次级版本。
appName 返回浏览器的名称。
appVersion 返回浏览器的平台和版本信息。
browserLanguage 返回当前浏览器的语言。
cookieEnabled 返回指明浏览器中是否启用 cookie 的布尔值。
cpuClass 返回浏览器系统的 CPU 等级。
onLine 返回指明系统是否处于脱机模式的布尔值。
platform 返回运行浏览器的操作系统平台。
systemLanguage 返回 OS 使用的默认语言。
userAgent 返回由客户机发送服务器的 user-agent 头部的值。
userLanguage 返回 OS 的自然语言设置。

我们使用的比较多的是他的userAgent,经常需要判断的情况有:

(1)PC还是移动端

(2)安卓还是IOS

(3)浏览器的类型

示例代码:

 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 }

判断是否移动端

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 }

js navigator对象的更多相关文章

  1. js中的navigator对象

    Navigator 对象包含有关浏览器的信息.所有浏览器都支持该对象 在控制台中输出相关信息的代码 <script> console.log(navigator); </script ...

  2. JS中的Navigator 对象

    Navigator 对象包含有关浏览器的信息. 很多时候我们需要在判断网页所处的浏览器和平台,Navigator为我们提供了便利 Navigator常见的对象属性如下: 属性 描述 appCodeNa ...

  3. Js之Navigator对象

    Window对象的navigator属性引用的是包含浏览器厂商和版本信息的Navigator对象.Navigator对象的命名是为了纪念Netscape之后NavigatorBU览器译注2,不过所有其 ...

  4. 【一个小功能】从js判断ie版本,浅谈navigator对象的appName属性

    判断IE版本主要的是获取两个属性,a.当前浏览器名称,b.当前浏览器版本,为此不得不了解navigator对象. 先贴代码 window.onload = function() { var brows ...

  5. JS window对象 Navigator对象 Navigator 对象包含有关浏览器的信息,通常用于检测浏览器与操作系统的版本。

    Navigator对象 Navigator 对象包含有关浏览器的信息,通常用于检测浏览器与操作系统的版本. 对象属性: 查看浏览器的名称和版本,代码如下: <script type=" ...

  6. js中 navigator 对象

    Navigator 对象包含有关浏览器的信息. 很多时候我们需要在判断网页所处的浏览器和平台,Navigator为我们提供了便利 Navigator常见的对象属性如下: 属性 描述 appCodeNa ...

  7. 浏览器检测navigator 对象

    1.浏览器及版本号不同的浏览器支持的功能.属性和方法各有不同.比如IE 和Firefox 显示的页面可能就会有所略微不同. alert('浏览器名称:' + navigator.appName); a ...

  8. js 基础对象一

    JavaScript 通常用于操作 HTML 元素. Document元素 每个载入浏览器的 HTML 文档都会成为 Document 对象. Document 对象使我们可以从脚本中对 HTML 页 ...

  9. Javascript高级编程学习笔记(30)—— BOM(4)navigator对象

    window对象作为浏览器的全局对象.location对象保存了页面的url信息 那么navigator对象又有什么作用呢? navigator对象 该对象最早由 Netspace Navigator ...

随机推荐

  1. SDE在64位Server2008下Post启动服务失败官方解释

    解决了一个SDE启动问题,在此记录一下 在server 2008 64位下安装完arcgis sde之后,Post启动服务,总是失败 查看SDE日志(etc目录下) DB_open_instance( ...

  2. nginx配置开机启动及配置sudo授权启动

    1.https://www.cnblogs.com/whatmiss/p/7091220.html        配置开机启动nginx 2.sudo授权其它用户启动 (1)root用户编辑 visu ...

  3. php多图片上传。

    1. <form method="post" enctype="multipart/form-data" action='请求地址' > <i ...

  4. Node.js之process模块

    注意⚠️:process为nodejs内置对象,不需要实例化,改模块用来与当前进程进行互动,可以通过全局变量process访问,它是一个EventEmitter对象的实例. process对象提供一系 ...

  5. requestAnimFrame动画兼容性封装

    window.requestAnimFrame=function(){ return window.requestAnimationFrame ||window.webkitRequestAnimat ...

  6. Android悬浮窗及其拖动事件

    主页面布局很简单,只有一个RelativelyLayout <?xml version="1.0" encoding="utf-8"?> <R ...

  7. wsgiref分析

    """Generic socket server classes. This module tries to capture the various aspects of ...

  8. MVC基于角色权限控制--菜单展示

    在用户成功登陆后台页面后,我们需要将当前用户拥有的权限通过菜单的形式展现出来,将未具备的权限隐藏 新建一个HomeController,用于展示后台首页和获取用户权限数据 namespace CZBK ...

  9. 使用STM32CubeMX生成USB_HOST_HID工程[添加对CAPS_LOCK指示灯的控制][SetReport]

    在之前(使用STM32CubeMX生成USB_HOST_HID工程)的基础上进行修改 在结合之前在pc上的测试 USB之HID类Set_Report Request[调试手记1] 测试代码如下: /* ...

  10. Appium -作业5(2)

    # coding:utf-8 from appium import webdriverimport timedesired_caps = { 'platformName':'Android', 'de ...