基于jQuery的插件扩展,主要用于识别浏览器内核与外壳的类型和版本
写了个基于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浏览器、傲游、腾讯QQ\TT浏览器、世界之窗、彗星浏览器、绿色浏览器、传统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>
基于jQuery的插件扩展,主要用于识别浏览器内核与外壳的类型和版本相关推荐
- 利用jQuery插件扩展识别浏览器内核与外壳的类型和版本
jquery.browsertype-1.0.js /** * jQuery插件开发方法二:第一步:插件定义*/ jQuery.myPlugin = {//获得浏览器的内核与外壳的类型和版本 Clie ...
- 基于jQuery日历插件制作日历
这篇文章主要介绍了基于jQuery日历插件制作日历的相关资料,需要的朋友可以参考下 来看下最终效果图吧: 是长得丑了一点,不要吐槽我-.- 首先来说说这个日历主要的制作逻辑吧: ·一个月份最多有31天 ...
- 基于jquery的插件turn.js学习笔记
基于jquery的插件turn.js学习笔记 简介 turn.js是一个可以实现3d书籍展示效果的jq插件,使用html5和css3来执行效果.可以很好的适应于ios和安卓等触摸设备. How it ...
- 基于jquery fly插件实现加入购物车抛物线动画效果
在购物网站中,加入购物车的功能是必须的功能,有的网站在用户点击加入购物车按钮时,就会出现该商品从点击出以抛物线的动画相似加入购物车,这个功能看起来非常炫,对用户体验也有一定的提高.下面介绍基于jque ...
- 基于jQuery倒计时插件实现团购秒杀效果
倒计时一般是用来表示未来某一时刻距现在时刻还剩多少时间.倒计时在WEB上应用非常广泛,如考试系统倒计时,团购网站中的优惠活动倒计时等等.今天,我们来使用jQuery倒计时超级实现团购秒杀效果,感兴趣的 ...
- jquery组织结构图插件 (基于jit-yc 做可拖动、自适应伸缩的orgchart)
一个基于jquery jit-yc插件实现的orgchart结构图demo 首先 后台处理转入JSON数据是必须的, var json = {"id": 1,"name& ...
- 发布基于jQuery的灯箱广告插件momoSlideShow
好久不写博客了,今天发布一个插件,这个插件是基于jQuery的插件,主要功能是轮流显示一系列的灯箱广告,该插件具有使用简单,体积小的特点(仅4k左右),界面截图如下: html: <div id ...
- jquery thickbox插件
在jquery中插入第三方插件时要注意:先加载css样式,再加载jquery,之后再加载其他js的其他样式 ThickBox是一个基于JQuery类库的扩展,它能在浏览器界面上显示非常棒的UI框,它可 ...
- ajax 随机,基于JQuery及AJAX实现名人名言随机生成器
基于JQuery及AJAX实现名人名言随机生成器 发布于 2017-05-05 06:56:38 | 137 次阅读 | 评论: 0 | 来源: 网友投递 jQuery javascript框架jQu ...
最新文章
- 探索机器学习的公平性(Delayed Impact of Fair Machine Learning)论文 pdf
- openstack环境准备
- 操作系统概念学习笔记 15 内存管理(一)
- C++ Boost库简介
- ubuntu linux下使用vscode切换python虚拟环境
- 数据库SQL语言从入门到精通--Part 3--SQL语言基础知识
- P6097-[模板]子集卷积
- 如何修复会话固定漏洞_PHP安全漏洞:会话劫持,跨站点脚本,SQL注入以及如何修复它们...
- Swiftfox:极速的冲浪体验
- python代码技巧_让你python代码更快的3个小技巧
- mysql重做日志与binlog日志区别_【135期】谈谈MySQL中的重做日志,回滚日志,以及二进制日志的区别及各自作用...
- 微信小程序名片版需要服务器吗,【微信小程序】壹脉智能名片小程序源码V3.5.0+前端+后端+无插件【包更新】...
- 联想服务器修改开机启动项,怎样在Win10系统里面手动设置开机启动项
- 〖Python接口自动化测试实战篇⑦〗- 接口抓包工具 Fiddler 的使用
- 淘宝开店怎么寻找货源?淘宝怎么样申请开店吗?
- 17.继承和派生的基本概念
- SPO 二,比较 SharePoint On-Premises, Online, On Azure.
- 高效mongoDB开发规范
- HTC G3 Hero与iPhone的使用手记
- iOS App icon、启动页、图标规范