文档章节

使用jquery插件报错:$.browser is undefined的解决方法

wncode
 wncode
发布于 2016/03/27 02:14
字数 396
阅读 19
收藏 0

刚开始以为是插件有错误,就到官方网站去下载一个最新版的Jcrop插件,结果在原项目的网页打开就是正常的,而引入项目就会报错,我发现可能与 jquery的插件版本有关,查看官方的demo目录下的juqery版本是V1.3.2, 而我使用的jquery版本是V1.11.1,查看jquery官方的更新日志,果然是这个的问题。

关于$.browser

browser就是用来获取浏览器基本信息的。

jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support 。 在更新的 2.0 版本中,将不再支持 IE 6/7/8。 以后,如果用户需要支持 IE 6/7/8,只能使用 jQuery 1.9。

解决方法

如果要全面支持 IE,并混合使用 jQuery 1.9 和 2.0, 官方的解决方案是:

<!--[if lt IE 9]>
    <script src='jquery-1.9.0.js'></script>
<![endif]-->
<!--[if gte IE 9]>
    <script src='jquery-2.0.0.js'></script>
<![endif]-->

从长久来看,这样有利于在复杂情况下根据浏览器特性进行分别处理, 而不是简单的检测浏览器类型和版本。 但目前很多旧程序的移植恐怕无法直接过渡为根据浏览器支持特性, 所以在网上找了一些能够直接替换的解决办法。

判断浏览器类型

$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());
 $.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase());
 $.browser.opera = /opera/.test(navigator.userAgent.toLowerCase());
 $.browser.msie = /msie/.test(navigator.userAgent.toLowerCase());

等号后面的表达式返回的就是 true/false, 可以直接用来替换原来的 $.browser.msie 等。

© 著作权归作者所有

wncode
粉丝 196
博文 119
码字总数 90898
作品 0
浦东
程序员
私信 提问
require引入pNotify插件没效果

一般引入 可以出效果的 使用requirejs 在页面底部 require配置 var config={ baseUrl: '/dome/js', paths: { jquery: 'jquery.min', pnotify:'pnotify.custom' } } 这是mainjs部分代码 requ......

沧颜
2016/07/19
292
0
require引入pnotify插件,插件代码不执行

一般引入 可以出效果的 使用requirejs 在页面底部 require配置 var config={ baseUrl: '/dome/js', paths: { jquery: 'jquery.min', pnotify:'pnotify.custom' } } 这是mainjs部分代码 requ......

沧颜
2016/07/19
204
0
JQuery 的各种初始化方法

JQuery是web前端的常用技术,在前端开发、甚至php、Java、python等web开发中,我们经常需要用到这门技术。因此jQuery是web开发中,非常重要的一个技术,也是初学者必须掌握的一个技术。今天小...

小麦麦子
2015/07/17
3K
0
jQuery插件开发 - 其实很简单

【前言】 jQuery已经被广泛使用,凭借其简洁的API,对DOM强大的操控性,易扩展性越来越受到web开发人员的喜爱,我在社区也发布了很多的jQuery插件,经常有人询问一些技巧,因此干脆写这么一篇...

晨曦之光
2012/03/09
202
0
JQuery插件开发教程 | WhyJQuery

【前言】 jQuery已经被广泛使用,凭借其简洁的API,对DOM强大的操控性,易扩展性越来越受到web开发人员的喜爱,我在社区也发布了很多的jQuery插件,经常有人询问一些技巧,因此干脆写这么一篇...

柒月-小妖精
2013/11/14
222
1

没有更多内容

加载失败,请刷新页面

加载更多

Shell学习记录(持续更新)

一、shell定时备份数据库任务通用脚本 目标:根据定时任务启动脚本,执行数据库备份任务,按照日期进行每日备份,如已经备份则脚本停止,备份任务完成后将结果发送邮件提醒 1.执行数据库备份...

网络小虾米
今天
3
0
PHP计算两个经纬度地点之间的距离

/** * 求两个已知经纬度之间的距离,单位为米 * * @param lng1 $ ,lng2 经度 * @param lat1 $ ,lat2 纬度 * @return float 距离,单位米 * @author www.Alixixi.com */function get...

子枫Eric
今天
14
0
Linux—day 4

ch2 需要掌握的命令 (1)cat -n 1.txt (2)more 1.txt (3)head -n 15 initial-setup-ks.cfg (4)tail -n 17 initial-setup-ks.cfg;tail -f initial-setup-ks.cfg (5)cat -n anaconda-ks.c......

呵呵暖茶
今天
31
0
【Kubernetes社区之路】我的PR被抢了

2019年11月的某天,我无意间发现一个PR作者在自己的PR中抱怨自己的PR没被合入,而另一个比自己提交晚且内容几乎一样的PR则被合入了。 字里行间透露些许伤感外加无奈,原文如下: 作为一名开源...

恋恋美食
今天
40
0
阻塞队列

对于许多线程问题, 可以通过使用一个或多个队列以优雅且安全的方式将其形式化。生产者线程向队列插人元素, 消费者线程则取出它们。 使用队列, 可以安全地从一个线程向另 一个线程传递数据...

ytuan996
今天
48
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部