解决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 相关文章推荐
jscript之Open an Excel Spreadsheet
Jun 13 Javascript
JavaScript中的Document文档对象
Jan 16 Javascript
改写一个简单的菜单 弹性大小
Dec 02 Javascript
js给onclick事件赋值,动态传参数实例解说
Mar 28 Javascript
javascript实现unicode与ASCII相互转换的方法
Dec 10 Javascript
基于JavaScript实现一定时间后去执行一个函数
Dec 14 Javascript
基于jQuery ligerUI实现分页样式
Sep 18 Javascript
Vue.js:使用Vue-Router 2实现路由功能介绍
Feb 22 Javascript
原生js仿淘宝网商品放大镜效果
Feb 28 Javascript
详解wow.js中各种特效对应的类名
Sep 13 Javascript
Bootstrap Table 双击、单击行获取该行及全表内容
Aug 31 Javascript
Vue中this.$nextTick的作用及用法
Feb 04 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制作的意见反馈表源码
2007/03/11 PHP
php中使用接口实现工厂设计模式的代码
2012/06/17 PHP
PHP获取php,mysql,apche的版本信息示例代码
2014/01/16 PHP
JS清除IE浏览器缓存的方法
2013/07/26 Javascript
js 中的switch表达式使用示例
2020/06/03 Javascript
js禁止页面刷新禁止用F5键刷新禁止右键的示例代码
2013/09/23 Javascript
jquery ajax对特殊字符进行转义防止js注入使用示例
2013/11/21 Javascript
js用拖动滑块来控制图片大小的方法
2015/02/27 Javascript
js实现touch移动触屏滑动事件
2015/04/17 Javascript
JavaScript中使用Math.floor()方法对数字取整
2015/06/15 Javascript
JS实现表单中checkbox对勾选中增加边框显示效果
2015/08/21 Javascript
JS实现的仿淘宝交易倒计时效果
2015/11/27 Javascript
bootstrap常用组件之头部导航实现代码
2017/04/20 Javascript
十分钟带你快速了解React16新特性
2017/11/10 Javascript
深入浅析Vue 中 ref 的使用
2019/04/29 Javascript
详解wepy开发小程序踩过的坑(小结)
2019/05/22 Javascript
Vue数据绑定实例写法
2019/08/06 Javascript
Vue分页效果与购物车功能
2019/12/13 Javascript
python实现批量转换文件编码(批转换编码示例)
2014/01/23 Python
快速入门python学习笔记
2017/12/06 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
python3 发送任意文件邮件的实例
2018/01/23 Python
Python使用Phantomjs截屏网页的方法
2018/05/17 Python
Tensorflow中的降维函数tf.reduce_*使用总结
2020/04/20 Python
python+adb命令实现自动刷视频脚本案例
2020/04/23 Python
python在CMD界面读取excel所有数据的示例
2020/09/28 Python
关于css中margin的值和垂直外边距重叠问题
2020/10/27 HTML / CSS
html5 Canvas画图教程(10)—把面拆成线条模拟出圆角矩形
2013/01/09 HTML / CSS
英国领先的在线高尔夫商店:Gamola Golf
2019/11/16 全球购物
财务人员担保书
2014/05/13 职场文书
2014基建处领导班子“四风”对照检查材料思想汇报
2014/10/04 职场文书
幼儿园感恩节活动方案
2014/10/06 职场文书
教师个人年度总结
2015/02/11 职场文书
侵犯商业秘密的律师函
2015/05/27 职场文书
2016年学习贯彻十八届五中全会精神心得体会
2016/01/05 职场文书
MySQL数据库之存储过程 procedure
2022/06/16 MySQL