解决jquery1.9不支持browser对象的问题


Posted in Javascript onNovember 13, 2013

最近因项目需要,要用jquery的cycle插件,但是项目里面一直用的都是jquery1.9,不支持browser对象,百度一下,找到了解决方案。

在cycle插件的源码里面直接加上下面这段代码就可以了:

(function(jQuery){ if(jQuery.browser) return; 
jQuery.browser = {}; 
jQuery.browser.mozilla = false; 
jQuery.browser.webkit = false; 
jQuery.browser.opera = false; 
jQuery.browser.msie = false; 
var nAgt = navigator.userAgent; 
jQuery.browser.name = navigator.appName; 
jQuery.browser.fullVersion = ''+parseFloat(navigator.appVersion); 
jQuery.browser.majorVersion = parseInt(navigator.appVersion,10); 
var nameOffset,verOffset,ix; 
// In Opera, the true version is after "Opera" or after "Version" 
if ((verOffset=nAgt.indexOf("Opera"))!=-1) { 
jQuery.browser.opera = true; 
jQuery.browser.name = "Opera"; 
jQuery.browser.fullVersion = nAgt.substring(verOffset+6); 
if ((verOffset=nAgt.indexOf("Version"))!=-1) 
jQuery.browser.fullVersion = nAgt.substring(verOffset+8); 
} 
// In MSIE, the true version is after "MSIE" in userAgent 
else if ((verOffset=nAgt.indexOf("MSIE"))!=-1) { 
jQuery.browser.msie = true; 
jQuery.browser.name = "Microsoft Internet Explorer"; 
jQuery.browser.fullVersion = nAgt.substring(verOffset+5); 
} 
// In Chrome, the true version is after "Chrome" 
else if ((verOffset=nAgt.indexOf("Chrome"))!=-1) { 
jQuery.browser.webkit = true; 
jQuery.browser.name = "Chrome"; 
jQuery.browser.fullVersion = nAgt.substring(verOffset+7); 
} 
// In Safari, the true version is after "Safari" or after "Version" 
else if ((verOffset=nAgt.indexOf("Safari"))!=-1) { 
jQuery.browser.webkit = true; 
jQuery.browser.name = "Safari"; 
jQuery.browser.fullVersion = nAgt.substring(verOffset+7); 
if ((verOffset=nAgt.indexOf("Version"))!=-1) 
jQuery.browser.fullVersion = nAgt.substring(verOffset+8); 
} 
// In Firefox, the true version is after "Firefox" 
else if ((verOffset=nAgt.indexOf("Firefox"))!=-1) { 
jQuery.browser.mozilla = true; 
jQuery.browser.name = "Firefox"; 
jQuery.browser.fullVersion = nAgt.substring(verOffset+8); 
} 
// In most other browsers, "name/version" is at the end of userAgent 
else if ( (nameOffset=nAgt.lastIndexOf(' ')+1) < 
(verOffset=nAgt.lastIndexOf('/')) ) 
{ 
jQuery.browser.name = nAgt.substring(nameOffset,verOffset); 
jQuery.browser.fullVersion = nAgt.substring(verOffset+1); 
if (jQuery.browser.name.toLowerCase()==jQuery.browser.name.toUpperCase()) { 
jQuery.browser.name = navigator.appName; 
} 
} 
// trim the fullVersion string at semicolon/space if present 
if ((ix=jQuery.browser.fullVersion.indexOf(";"))!=-1) 
jQuery.browser.fullVersion=jQuery.browser.fullVersion.substring(0,ix); 
if ((ix=jQuery.browser.fullVersion.indexOf(" "))!=-1) 
jQuery.browser.fullVersion=jQuery.browser.fullVersion.substring(0,ix); 
jQuery.browser.majorVersion = parseInt(''+jQuery.browser.fullVersion,10); 
if (isNaN(jQuery.browser.majorVersion)) { 
jQuery.browser.fullVersion = ''+parseFloat(navigator.appVersion); 
jQuery.browser.majorVersion = parseInt(navigator.appVersion,10); 
} 
jQuery.browser.version = jQuery.browser.majorVersion; 
})(jQuery);

这段代码是专门解决browser对象不被支持的问题的。
Javascript 相关文章推荐
用javascript实现画板的代码
Sep 05 Javascript
js实现简单模态窗口,背景灰显
Nov 14 Javascript
Mootools 1.2 手风琴(Accordion)教程
Sep 15 Javascript
javascript parseInt() 函数的进制转换注意细节
Jan 08 Javascript
jQuery中cookie插件用法实例分析
Dec 04 Javascript
js HTML5 Ajax实现文件上传进度条功能
Feb 13 Javascript
JavaScript仿flash遮罩动画效果
Jun 15 Javascript
详解webpack 多入口配置
Jun 16 Javascript
JS手机端touch事件计算滑动距离的方法示例
Oct 26 Javascript
vue实现重置表单信息为空的方法
Sep 29 Javascript
JavaScript基于遍历操作实现对象深拷贝功能示例
Mar 05 Javascript
微信小程序new Date()方法失效问题解决方法
Jul 29 Javascript
js获取IFRAME当前的URL的方法
Nov 13 #Javascript
jquery 漂亮的删除确认和提交无刷新删除示例
Nov 13 #Javascript
常见表单重复提交问题整理及解决方法
Nov 13 #Javascript
获取下拉列表框的值是数组,split,$.inArray示例
Nov 13 #Javascript
jquery属性选择器not has怎么写 行悬停高亮显示
Nov 13 #Javascript
jquery validate在ie8下的bug解决方法
Nov 13 #Javascript
JQuery伸缩导航练习示例
Nov 13 #Javascript
You might like
PHP容易被忽略而出错陷阱 数字与字符串比较
2011/11/10 PHP
Yii2 队列 shmilyzxt/yii2-queue 简单概述
2017/08/02 PHP
jQuery中绑定事件的命名空间详解
2011/04/05 Javascript
JavaScript bold方法入门实例(把指定文字显示为粗体)
2014/10/17 Javascript
JavaScript 学习笔记之变量及其作用域
2015/01/14 Javascript
Javascript的无new构建实例详解
2016/05/15 Javascript
BootStrap中Datetimepicker和uploadify插件应用实例小结
2016/05/26 Javascript
Javascript iframe交互并兼容各种浏览器的解决方法
2016/07/12 Javascript
JS实现屏蔽网页右键复制及ctrl+c复制的方法【2种方法】
2016/09/04 Javascript
ion content 滚动到底部会遮住一部分视图的快速解决方法
2016/09/06 Javascript
JavaScript仿网易选项卡制作代码
2016/10/06 Javascript
Bootstrap Navbar Component实现响应式导航
2016/10/08 Javascript
js实现多行文本框统计剩余字数功能
2017/03/28 Javascript
ES6新特性八:async函数用法实例详解
2017/04/21 Javascript
jQuery菜单实例(全选,反选,取消)
2017/08/28 jQuery
360提示[高危]使用存在漏洞的JQuery版本的解决方法
2017/10/27 jQuery
json前后端数据交互相关代码
2018/09/19 Javascript
微信小程序使用component自定义toast弹窗效果
2018/11/27 Javascript
微信小程序如何连接Java后台
2019/08/08 Javascript
[42:11]TNC vs Pain 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
17个Python小技巧分享
2015/01/23 Python
Python多线程编程(八):使用Event实现线程间通信
2015/04/05 Python
Python通过Pygame绘制移动的矩形实例代码
2018/01/03 Python
Python实现判断字符串中包含某个字符的判断函数示例
2018/01/08 Python
python实现定时自动备份文件到其他主机的实例代码
2018/02/23 Python
Python 正则表达式爬虫使用案例解析
2019/09/23 Python
python中文分词库jieba使用方法详解
2020/02/11 Python
python利用google翻译方法实例(翻译字幕文件)
2020/09/21 Python
HTML5本地存储之IndexedDB
2017/06/16 HTML / CSS
软件配置管理有什么好处
2015/04/15 面试题
学年自我鉴定
2014/01/16 职场文书
大学生在校学习的自我评价
2014/02/18 职场文书
婚前协议书
2014/04/15 职场文书
公务员中国梦演讲稿
2014/08/19 职场文书
永不妥协观后感
2015/06/10 职场文书
Win11安装升级时提示“该电脑必须支持安全启动”
2022/04/19 数码科技