利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码_Javascript教程-查字典教程网
利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码
利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码
发布时间:2016-12-30 来源:查字典编辑
摘要:尤其是在当今各种浏览器满天飞(据说仅以IE为内核的浏览器就有200种之多)。小弟今天写了个基于jQuery的插件扩展,主要用于识别浏览器内核...

尤其是在当今各种浏览器满天飞(据说仅以IE为内核的浏览器就有200种之多)。

小弟今天写了个基于jQuery的插件扩展,主要用于识别浏览器内核与外壳的类型和版本。可识别各种浏览器的内核,并已经支持多种国内主流浏览器。

费话不多说,上我的JavaScript代码:(文件名:jquery.browsertype-1.0.js)

复制代码 代码如下:

/**

* jQuery插件开发方法二:第一步:插件定义

*/

jQuery.myPlugin = {

//获得浏览器的内核与外壳的类型和版本

Client: function (){

//浏览器内核类型(只有五种)

var engine = { ie:0, webkit:0, gecko:0, opera:0, khtml:0 };

//浏览器外壳类型(国内常见的浏览器有:360浏览器、傲游、腾讯QQTT浏览器、世界之窗、彗星浏览器、绿色浏览器、传统IE、谷歌Chrome、网景netscape、火狐、Opera、苹果Safari等等)

var shell = { se360:0, se:0, maxthon:0, qq:0, tt:0, theworld:0, cometbrowser:0, greenbrowser:0, ie:0, chrome:0, netscape:0, firefox:0, opera:0, safari:0, konq:0 };

//获得客户端浏览器的信息

var ua = navigator.userAgent.toLowerCase();

for (var type in engine) {

if (typeof type === 'string') {

var regexp = 'gecko' === type ? /rv:([w.]+)/ : RegExp(type + '[ /]([w.]+)');

if (regexp.test(ua)){

engine.version = window.opera ? window.opera.version() : RegExp.$1;//浏览器内核版本

engine[type] = parseFloat(engine.version);

engine.type = type;//浏览器内核类型

break;

}

}

}

for (var type in shell) {

if (typeof type === 'string') {

var regexp = null;

switch(type) {

case "se360": regexp = /360se(?:[ /]([w.]+))?/; break;

case "se": regexp = /se ([w.]+)/; break;

case "qq": regexp = /qqbrowser/([w.]+)/; break;

case "tt": regexp = /tencenttraveler ([w.]+)/; break;

case "safari": regexp = /version/([w.]+)/; break;

case "konq": regexp = /konqueror/([w.]+)/; break;

case "netscape": regexp = /navigator/([w.]+)/; break;

default: regexp = RegExp(type + '(?:[ /]([w.]+))?');

}

if (regexp.test(ua)) {

shell.version = window.opera ? window.opera.version() : RegExp.$1 ? RegExp.$1 : 'unknown';//浏览器外壳版本

shell[type] = parseFloat(shell.version);

shell.type = type;//浏览器外壳类型

break;

}

}

}

//返回浏览器内核与外壳的类型和版本:engine为内核,shell为外壳

return { engine: engine, shell: shell };

}

};

/**

* jQuery插件开发方法二:第二步:执行插件

* jQuery.myBrowser插件:获得浏览器的内核与外壳的类型和版本

* 使用示例:

* (1)浏览器内核:alert("您的浏览器信息如下:n内核类型:"+jQuery.myBrowser.engine.type+",内核版本:"+jQuery.myBrowser.engine.version);

* (2)浏览器外壳:alert("您的浏览器信息如下:n外壳类型:"+jQuery.myBrowser.shell.type+",外壳版本:"+jQuery.myBrowser.shell.version);

*/

jQuery.myBrowser = jQuery.myPlugin.Client();

使用示例:(test.html)

复制代码 代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>获得浏览器的信息</title>

<script type="text/javascript" src="https://www.google.com/jsapi"></script>

<script type="text/javascript">

google.load("jquery", "1.4.2");

google.load("jqueryui", "1.7.2");

</script>

<script type="text/javascript" src="jquery.browsertype-1.0.js"></script>

<script type="text/javascript">

alert("您的浏览器信息如下:n内核类型:"+jQuery.myBrowser.engine.type+",内核版本:"+jQuery.myBrowser.engine.version);

alert("您的浏览器信息如下:n外壳类型:"+jQuery.myBrowser.shell.type+",外壳版本:"+jQuery.myBrowser.shell.version);

document.writeln("您的浏览器内核类型 ——>"+jQuery.myBrowser.engine.type+":"+jQuery.myBrowser.engine.version+"<br>");

document.writeln("您的浏览器外壳类型 ——>"+jQuery.myBrowser.shell.type+":"+jQuery.myBrowser.shell.version+"<br>");

</script>

</head>

<body>

<br/>测试浏览器的内核与外壳的类型和版本:<br/>

</body>

</html>

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类