javascript宿主对象之window.navigator详解


Posted in Javascript onSeptember 07, 2016

window.navigator用来反映浏览器及其功能信息的对象。 

// 检测浏览器版本信息
function getBrowserInfo(){
  var Sys = {};
  var ua = window.navigator.userAgent.toLowerCase();
  var re =/(msie|firefox|chrome|opera|version).*?([\d.]+)/;
  var m = ua.match(re);
  Sys.browser = m[1].replace(/version/, "'safari");
  Sys.ver = m[2];
  return Sys;
}
var BomInfo = getBrowserInfo;
console.log(BomInfo ());

如何判断是不是ie呢?

var navigatorName = "Microsoft Internet Explorer"; 
var isIE = false;  
if( window.navigator.appName == navigatorName ){  
  isIE = true;  
  alert("ie")  
}else{  
  alert("not ie")  
}

还有一种方法:

if(window.addEventListener){ 
   alert("not ie");  
}else if(window.attachEvent){  
   alert("is ie");  
}else{  
    alert("这种情况发生在不支持DHTML的老版本浏览器(现在一般都支持)")  
}

判断设备类型: 

function browerType() {
   var sUserAgent = navigator.userAgent.toLowerCase(); //浏览器的用户代理设置为小写,再进行匹配
   var isIpad = sUserAgent.match(/ipad/i) == "ipad"; //或者利用indexOf方法来匹配
   var isIphoneOs = sUserAgent.match(/iphone os/i) == "iphone";
   var isMidp = sUserAgent.match(/midp/i) == "midp"; //移动信息设备描述MIDP是一套Java应用编程接口,多适用于塞班系统
   var isUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4"; //CVS标签
   var isUc = sUserAgent.match(/ucweb/i) == "ucweb";
   var isAndroid = sUserAgent.match(/android/i) == "android";
   var isCe = sUserAgent.match(/windows ce/i) == "windows ce";
   var isWM = sUserAgent.match(/windows mobil/i) == "windows mobil";
   if (isIpad || isIphoneOs || isMidp || isUc7 || isUc || isAndroid || isCe || isWM) {
     alert('该设备为移动设备'); // 做某些事情
   } else {
     alert('该设备为PC设备'); // 做某些事情
   }
}
browerType();

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jquery的blockui插件显示弹出层
Apr 14 Javascript
jquery绑定原理 简单解析与实现代码分享
Sep 06 Javascript
jQuery中delegate与on的用法与区别示例介绍
Dec 20 Javascript
JavaScript 实现简单的倒计时弹窗DEMO附图
Mar 05 Javascript
使用js画图之画切线
Jan 12 Javascript
javascript日期操作详解(脚本之家整理)
Sep 05 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
May 30 Javascript
教你JS中的运算符乘方、开方及变量格式转换
Aug 09 Javascript
老生常谈Bootstrap媒体对象
Jul 06 Javascript
jQuery创建折叠式菜单
Jun 15 jQuery
微信小程序本地存储实现每日签到、连续签到功能
Oct 09 Javascript
微信小程序实现可长按移动控件
Nov 01 Javascript
Angular 理解module和injector,即依赖注入
Sep 07 #Javascript
JS继承之借用构造函数继承和组合继承
Sep 07 #Javascript
Node.js读写文件之批量替换图片的实现方法
Sep 07 #Javascript
jQuery实现底部浮动窗口效果
Sep 07 #Javascript
聊一聊Vue.js过渡效果
Sep 07 #Javascript
BootStrap中的表单大全
Sep 07 #Javascript
JS实现title标题栏文字不间断滚动显示效果
Sep 07 #Javascript
You might like
php实现用户在线时间统计详解
2011/10/08 PHP
让CodeIgniter的ellipsize()支持中文截断的方法
2014/06/12 PHP
PHP实现获取文件mime类型多种方法解析
2020/05/28 PHP
用js实现上传图片前的预览(TX的面试题)
2007/08/14 Javascript
javascript 一些用法小结
2009/09/11 Javascript
学习ExtJS Window常用方法
2009/10/07 Javascript
jquery validator 插件增加日期比较方法
2010/02/21 Javascript
jQuery 锚点跳转滚动条平滑滚动一句话代码
2010/04/30 Javascript
怎么选择Javascript框架(Javascript Framework)
2013/11/22 Javascript
初识Node.js
2014/09/03 Javascript
javascript实现 百度翻译 可折叠的分享按钮列表
2015/03/12 Javascript
浅析JavaScript中的事件机制
2015/06/04 Javascript
jQuery与Ajax以及序列化
2016/02/01 Javascript
使用JavaScript判断手机浏览器是横屏还是竖屏问题
2016/08/02 Javascript
巧用jQuery选择器提高写表单效率的方法
2016/08/19 Javascript
node网页分段渲染详解
2016/09/05 Javascript
jQuery Autocomplete简介_动力节点Java学院整理
2017/07/17 jQuery
Vue 3.0中jsx语法的使用
2020/11/13 Javascript
[01:20:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第四场 8.26
2018/08/30 DOTA
Python中处理字符串之islower()方法的使用简介
2015/05/19 Python
python实现周期方波信号频谱图
2018/07/21 Python
python实现自动登录后台管理系统
2018/10/18 Python
Python学习笔记之pandas索引列、过滤、分组、求和功能示例
2019/06/03 Python
Python如何调用JS文件中的函数
2019/08/16 Python
Pycharm中配置远程Docker运行环境的教程图解
2020/06/11 Python
Python3.9.1中使用match方法详解
2021/02/08 Python
澳大利亚潮流尖端的快时尚品牌:Cotton On
2016/09/26 全球购物
Kickers鞋英国官网:男士、女士和儿童鞋
2021/03/08 全球购物
WSDL的操作类型主要有几种
2013/07/19 面试题
国贸专业大学生职业生涯规划范文
2014/01/10 职场文书
银行见习期自我鉴定
2014/01/29 职场文书
结对共建工作方案
2014/06/02 职场文书
法定代表人授权委托书
2014/09/19 职场文书
2015年综治维稳工作总结
2015/04/07 职场文书
文明礼貌主题班会
2015/08/14 职场文书
Golang二维切片初始化的实现
2021/04/08 Golang