文档章节

jquery.Jcrop中解决jQuery不支持$.browser的办法

40岁的青春
 40岁的青春
发布于 2015/04/07 15:48
字数 308
阅读 364
收藏 0

在使用jquery.Jcrop的过程中,出现:

TypeError: $.browser is undefined
opt.trackDocument = $.browser.msie ? false : true;

由于使用的是jquery-1.11.2.min.js,不支持browser对象。


解决方案

在jquery.Jcrop.js的源码最下面直接加上下面这段代码:


(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);


© 著作权归作者所有

共有 人打赏支持
40岁的青春
粉丝 2
博文 71
码字总数 13985
作品 0
朝阳
私信 提问
IE博客:jQuery 1.5.1 支持 IE9

来自微软IE官方博客的文章表示:jQuery 1.5.1 完全支持 IE 9 浏览器: 上周,jQuery 发布了补丁版本 1.5.1 ,该版本更新记录中最值得关注的一句话是: “jQuery now supports Internet Expl...

红薯
2011/03/03
2.2K
7
解决input中placeholder值在ie中无法支持的问题

终于知道为什么IE不招人喜欢了,不招程序员喜欢,搞个东西,其他浏览器都好使,就尼玛IE事多,连placeholder都不支持。蛋疼,偏偏这 玩意用户量不容忽视。只好满网找解决方案,其实自己也能用...

憨科
2014/02/27
0
0
jQuery下通过$.browser来判断浏览器

$.browser.['浏览器关键字'] $(function(){if($.browser.msie) { }else if($.browser.safari){ }else if($.browser.mozilla){ }else if($.browser.opera) { }else{ }});看一下jQuery的源码:......

mj4738
2013/06/25
0
0
web开发之浏览器(二)----JQuery或JS判断浏览器内核版本号以及是否支持W3C盒子模型

效果:http://oospace.sinaapp.com/3.php 1,JQuery或JS判断浏览器内核版本号以及是否支持W3C盒子模型 jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.su...

Oo-Space
2014/12/24
0
0
jQuery 1.9 正式版发布,最后支持 IE 6/7/8 的版本

jQuery 1.9 正式版发布了,同时发布的还有 jQuery Migrate 1.0,如果你想使用该版本请先阅读 jQuery 1.9 升级指南 以便让你的升级更加顺利。 于此同时 jQuery 2.0 也正在进行 beta 的测试,2...

oschina
2013/01/16
28.8K
53

没有更多内容

加载失败,请刷新页面

加载更多

IOC的学习(1)

1.IOC理论概要 java中,一个对象A怎么才能调用对象B? 当一个对象的构建,需要多个其他对象时,对象和对象有复杂的构建关系。spring帮助我们维系对象的依赖关系,降低系统的实现成本,前提是...

杨健-YJ
24分钟前
1
0
Spring 的 getBean 方法源码解析

文本将从以下几个方面介绍 相关文章 FactoryBean 接口 BeanFactory 接口 BeanFactory 接口 和 FactoryBean 接口的区别 getBean 方法的源码解析 Spring 循环依赖的解决方式 相关文章 Spring 中...

TSMYK
27分钟前
0
0
李鸿章六百多字参倒豪门重臣,晚清第一奏折,藏尽顶级权谋话术!

道光二十七年(1847年),二十四岁的李鸿章高中进士,列二甲第十三名。 在此期间,有桩轶事挺有意思。 会试时,李鸿章的房师为当时的名士孙锵鸣。发榜后,孙锵鸣见自己这一房只考中了李鸿章、...

乔老哥
33分钟前
1
0
PTA-基础编程题目集-7-14 求整数段和

给定两个整数A和B,输出从A到B的所有整数以及这些数的和。 输入格式: 输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分隔。 输出格式: 首先顺序输出从A到B的所有整数,每...

niithub
34分钟前
4
0
Spring Qualifier的使用

摘要 spring 的 qualifier 平常使用一般直接是使用id 来限定,不过spring给我们提供了更强大的功能。 使用方法 直接使用 直接在@Qualifier中限定bean的id 在bean上使用@Qualifier来指定后续使...

52iSilence7
36分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部