同一个项目中两个jqery版本共存的问题

jQuery加载的时候会生成两个变量来引用jQuery对象,一个就是关键字jQuery,另一个就是$

 

而当两个版本的jQuery存在的时候,第二个jQuery就会把第一个版本里面的两个变量完全覆盖,

所以如果真遇到这种情况,那必须想个办法.

 

下面是我的解决方案:

<script type="text/javascript">
			var j$ =$.noConflict();
		</script>
		<script src="${resource(dir:'resource/fileupload',file:'jquery.js')}"></script>
		<script src="${resource(dir:'resource/fileupload',file:'ajaxfileupload.js')}"></script>
		<script src="${resource(dir:'js/production',file:'pro_form_upload.js')}"></script>
		
		<script type="text/javascript">
			var ju = $.noConflict();//把上面导入的jQuery的$变量取消
			
			var $ =j$.noConflict();//还原原来的jQuery的版本
		</script>
		

 

 

原理就是,先把原来的$变量保存起来,然后开始加载第二个jQuery,

然后开始执行必要的逻辑,

等执行完整之后,在把原来的$变量恢复回来,

 

当然,这里面包括JQuery变量也能恢复,我这里没有用到,就没做

在最下面直接加一句,

JQuery=$;

就可以了 .

相关文章
相关标签/搜索