1.js方法

/*
判断浏览器名称和版本
目前只能判断:ie/firefox/chrome/opera/safari
2012年5月16日23:47:08
浏览器内核UA:UA;
浏览器内核名称:NV.name;
浏览器内核版本:NV.version;
浏览器外壳名称:NV.shell;
*/
var NV = {};
var UA = navigator.userAgent.toLowerCase();
try
{
NV.name=!-[1,]?'ie':
(UA.indexOf("firefox")>0)?'firefox':
(UA.indexOf("chrome")>0)?'chrome':
window.opera?'opera':
window.openDatabase?'safari':
'unkonw';
}catch(e){};
try
{
NV.version=(NV.name=='ie')?UA.match(/msie ([\d.]+)/)[1]:
(NV.name=='firefox')?UA.match(/firefox\/([\d.]+)/)[1]:
(NV.name=='chrome')?UA.match(/chrome\/([\d.]+)/)[1]:
(NV.name=='opera')?UA.match(/opera.([\d.]+)/)[1]:
(NV.name=='safari')?UA.match(/version\/([\d.]+)/)[1]:
'0';
}catch(e){};
try
{
NV.shell=(UA.indexOf('360ee')>-1)?'360极速浏览器':
(UA.indexOf('360se')>-1)?'360安全浏览器':
(UA.indexOf('se')>-1)?'搜狗浏览器':
(UA.indexOf('aoyou')>-1)?'遨游浏览器':
(UA.indexOf('theworld')>-1)?'世界之窗浏览器':
(UA.indexOf('worldchrome')>-1)?'世界之窗极速浏览器':
(UA.indexOf('greenbrowser')>-1)?'绿色浏览器':
(UA.indexOf('qqbrowser')>-1)?'QQ浏览器':
(UA.indexOf('baidu')>-1)?'百度浏览器':
'未知或无壳';
}catch(e){}
alert('浏览器UA='+UA+
'\n\n浏览器名称='+NV.name+
'\n\n浏览器版本='+parseInt(NV.version)+
'\n\n浏览器外壳='+NV.shell);
});
2.jQuery插件 ;(function($)
{
/*
判断浏览器名称和版本
目前只能判断:ie/firefox/chrome/opera/safari
2012年5月16日23:47:08
浏览器内核UA:$.NV('ua');或$.NV('UA');
浏览器内核名称:$.NV('name');或$.NV();
浏览器内核版本:$.NV('version');
浏览器外壳名称:$.NV('shell');
*/
$.extend(
{
NV:function(name)
{
var NV = {};
var UA = navigator.userAgent.toLowerCase();
try
{
NV.name=!-[1,]?'ie':
(UA.indexOf("firefox")>0)?'firefox':
(UA.indexOf("chrome")>0)?'chrome':
window.opera?'opera':
window.openDatabase?'safari':
'unkonw';
}catch(e){};
try
{
NV.version=(NV.name=='ie')?UA.match(/msie ([\d.]+)/)[1]:
(NV.name=='firefox')?UA.match(/firefox\/([\d.]+)/)[1]:
(NV.name=='chrome')?UA.match(/chrome\/([\d.]+)/)[1]:
(NV.name=='opera')?UA.match(/opera.([\d.]+)/)[1]:
(NV.name=='safari')?UA.match(/version\/([\d.]+)/)[1]:
'0';
}catch(e){};
try
{
NV.shell=(UA.indexOf('360ee')>-1)?'360极速浏览器':
(UA.indexOf('360se')>-1)?'360安全浏览器':
(UA.indexOf('se')>-1)?'搜狗浏览器':
(UA.indexOf('aoyou')>-1)?'遨游浏览器':
(UA.indexOf('theworld')>-1)?'世界之窗浏览器':
(UA.indexOf('worldchrome')>-1)?'世界之窗极速浏览器':
(UA.indexOf('greenbrowser')>-1)?'绿色浏览器':
(UA.indexOf('qqbrowser')>-1)?'QQ浏览器':
(UA.indexOf('baidu')>-1)?'百度浏览器':
'未知或无壳';
}catch(e){}
switch(name)
{
case 'ua':
case 'UA':br=UA;break;
case 'name':br=NV.name;break;
case 'version':br=NV.version;break;
case 'shell':br=NV.shell;break;
default:br=NV.name;
}
return br;
}
});
})(jQuery);
调用方法(必须载入此插件): $(function()
{
alert('浏览器UA='+$.NV('UA')+
'\n\n浏览器名称='+$.NV('name')+
'\n\n浏览器版本='+parseInt($.NV('version'))+
'\n\n浏览器外壳='+$.NV('shell'));
});
到此基本完毕。

js/jQuery判断浏览器名称、内核版本、浏览器壳的更多相关文章

  1. 快速判断ie10及以上版本浏览器

    if (!(/msie [6|7|8|9]/i.test(navigator.userAgent))){ //ie10以上 }; 快速判断ie10及以上版本浏览器

  2. js jquery 判断元素是否在数组内

    js jquery 判断元素是否在数组内 一,js方法 var arr = ["a", "b", "c"]; // js arr.index ...

  3. js/jquery判断浏览器的方法小结

    在网站前端开发中,浏览器兼容性是前端开发框架要解决的第一个问题,要解决兼容性问题就得首先准确判断出浏览器的类型及其版本,而判断浏览器的版本一般只能通过分析浏览器的userAgent才能知道.今天我们把 ...

  4. js/jquery判断浏览器的方法总结

    JS获取浏览器信息浏览器代码名称:navigator.appCodeName浏览器名称:navigator.appName浏览器版本号:navigator.appVersion对Java的支持:nav ...

  5. js/jquery判断浏览器 & 停止加载

    JS获取浏览器信息 复制代码代码如下: 浏览器代码名称:navigator.appCodeName浏览器名称:navigator.appName浏览器版本号:navigator.appVersion对 ...

  6. Selenium_获取浏览器名称和版本(5)

    from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() driver.get(" ...

  7. js jquery 判断IE有效方法

    jquery1.9以前 $.browser.msie jquery1.9更高版本 $.browser.msie = /msie/.test(navigator.userAgent.toLowerCas ...

  8. js jquery 判断匹配元素是否存在

    jQuery 判断页面元素是否存在的代码 在传统的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在.原因是对一个不存在的元素进行操作是不允许的. 例如: 复制代码 ...

  9. JS/JQuery判断是否移动设备+JS/JQuery判断浏览器类型

    原文:https://blog.csdn.net/Little_Stars/article/details/48624669 JS代码如下(点击事件依赖JQuery): //判断设备类型 $(&quo ...

随机推荐

  1. 安装less

    1.下载安装iterm(http://www.iterm2.com/) 2.打开iterm,输入 sudo npm install -g less

  2. UISegmentedControl

    1. NSArray *segmentedArray = [[NSArray alloc]initWithObjects:@"1",@"2",@"3& ...

  3. Android Programming: Pushing the Limits -- Chapter 7:Android IPC -- ApiWrapper

    前面两片文章讲解了通过AIDL和Messenger两种方式实现Android IPC.而本文所讲的并不是第三种IPC方式,而是对前面两种方式进行封装,这样我们就不用直接把Aidl文件,java文件拷贝 ...

  4. ViewPager部分源码分析三:scroll

    手指在屏幕上滑动,触发到onTouchEvent(),执行case MotionEvent.ACTION_MOVE: ... public boolean onTouchEvent(MotionEve ...

  5. SQLSERVER查询连接数

    SELECT * FROM [Master].[dbo].[SYSPROCESSES] WHERE [DBID] IN (SELECT [DBID]FROM [Master].[dbo].[SYSDA ...

  6. Delphi版本顺序

    1.02.03.04.05.06.07.08.0200520062007 现在应该又出新的版本了

  7. js正则表达式:验证邮箱格式、密码复杂度、手机号码、QQ号码

    直接上代码             Java   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ...

  8. php的时间输出格式

    php中时间一般分为两种格式,一种是标准时间格式timestamp,即Y-m-d G:i:s.另一种就是时间戳. 例如: 一.标准时间与时间戳转换: //获得服务端系统时间 date_default_ ...

  9. [SQL]查询及删除重复记录的SQL语句

    一:查询及删除重复记录的SQL语句1.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select * from peoplewhere peopleId in (select ...

  10. 6个值得推荐的Android开源框架简介(转)

    虽然我们在做app的时候并不一定用到框架,但是一些好框架的思想是非常有学习价值的 1.volley 项目地址 https://github.com/smanikandan14/Volley-demo  ...