浏览器(一)

  • Navigator对象
    包含有关浏览器的信息(所有浏览器都支持)
【对象集合】
plugins -- 安装在浏览器中的插件数组  
【对象属性】
appCodeName -- 浏览器的代码名(字符串表示)
appMinorVersion -- 浏览器的次级版本
appName -- 浏览器名称(字符串表示)
appVersion -- 浏览器的平台和版本信息(字符串表示)
browserLanguage -- 当前浏览器的语言
cookieEnabled -- 如果启用cookie返回true,否则返回false
cpuClass -- 浏览器系统的cpu等级
onLine --  返回指明系统是否处于脱机模式的布尔值
platform -- 运行浏览器的操作系统平台(字符串表示)
systemLanguage -- 返回OS使用的默认语言
userLanguage -- 返回OS的自然语言设置
userAgent -- 用户代理头的字符串表示
【对象方法】
javaEnabled -- 如果启用java返回true,否则返回false
taintEnabled -- 如果启用了数据污点返回true,否则返回false

navigator中最重要的是userAgent属性,返回包含浏览器版本等信息的字符串;
cookieEnabled使用它可以判断用户浏览器是否开启cookie。

javaScript判断浏览器类型一般有两种办法,一种是根据各种浏览器独有的属性来分辨,另一种是通过分析浏览器的userAgent属性来判断(版本只能通过分析userAgent获得)

  • 各浏览器独有属性
-moz-          火狐firefox
-ms-           IE
-webkit-       谷歌chrome、苹果safari
-o-            欧朋Opera
  • userAgent
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串

 //判断是否IE<11浏览器
 userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1;
 //IE11
 userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1;
 //Edge
 userAgent.indexOf("Edg") > -1 && !(userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1);
 //网上很多写的是Edge,但我的电脑 navigator.userAgent 返回值为Edg
 //Firefox
 userAgent.indexOf("Firefox") > -1; 
 //Opera
 userAgent.indexOf("Opera") > -1 || userAgent.indexOf("OPR") > -1;
 //Chrome
 userAgent.indexOf("Chrome") > -1 && userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Edge") == -1 && userAgent.indexOf("OPR") == -1; 
 //Safari
 userAgent.indexOf("Safari") > -1 && userAgent.indexOf("Chrome") == -1 && userAgent.indexOf("Edge") == -1 && userAgent.indexOf("OPR") == -1; 
  • IE
<!--[if !IE]><!--> 除IE外都可识别 <!--<![endif]-->  
<!--[if IE]> 所有的IE可识别 <![endif]-->
<!--[if IE 6]> 仅IE6可识别 <![endif]-->
<!--[if lt IE 6]> IE6以及IE6以下版本可识别 <![endif]-->
<!--[if gte IE 6]> IE6以及IE6以上版本可识别 <![endif]-->
<!--[if IE 7]> 仅IE7可识别 <![endif]-->
<!--[if lt IE 7]> IE7以及IE7以下版本可识别 <![endif]-->
<!--[if gte IE 7]> IE7以及IE7以上版本可识别 <![endif]-->
<!--[if IE 8]> 仅IE8可识别 <![endif]-->
<!--[if IE 9]> 仅IE9可识别 <![endif]-->
IE:只有IE支持创建ActiveX控件,所以ActiveXObject函数是其他浏览器没有的。只需判断window对象存在 ActiveXObject函数,就明确判断出当前浏览器是IE。

Firefox:Firefox中的DOM元素都有一个getBoxObjectFor函数,用来获取该DOM元素的位置和大小。这是Firefox独有的,判断它即可分辨当前浏览器是Firefox。(IE对应的中是 getBoundingClientRect函数)

Opera:Opera提供了专门的浏览器标志-- window.opera属性。

Safari:openDatabase函数是其他浏览器没有的,可做为判断Safari的标志。

Chrome:和Firefox一样都有一个MessageEvent函数,但Chrome并没有Firefox的getBoxObjectFor 函数,根据这两个条件可判断Chrome浏览器。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值