1. 程式人生 > >同一個專案中兩個jqery版本共存的問題

同一個專案中兩個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=$;

就可以了 .