2011-03-07 41 views
0

任何人都可以幫助我對加載內容腳本應用不衝突嗎?到目前爲止,我已經試過以下添加到標題:將noConflict應用於jQuery加載內容腳本

<script type="text/javascript">var $j = jQuery.noConflict();</script> 

我也在下面的腳本替換「$」的所有實例「$ J」,但它只是當我有沒有運行了做出了這些改變。

$(document).ready(function() { 



$('#nav li a').click(function(){ 

var toLoad = $(this).attr('href')+' #content'; 
$('#content').fadeOut('400',loadContent); 
$('#load').remove(); 
$('#wrapper').append('<span id="load">LOADING...</span>'); 
$('#load').fadeIn('normal'); 
function loadContent() { 
    $('#content').load(toLoad,'',showNewContent()); 
} 
function showNewContent() { 
    $('#content').fadeIn('400',hideLoader()); 
} 
function hideLoader() { 
    $('#load').fadeOut('normal'); 
} 

fleXenv.initByClass("flexcroll"); 

initLytebox(); 

return false; 
});  
}); 

我已經閱讀了關於此的所有jquery文檔,但恐怕它超出了我當前的jquery級別。任何幫助將不勝感激,目前我處於低谷。

感謝邁克

+1

你可以使用匿名函數,並保持你的推薦.... – 2011-03-07 20:33:54

回答

1

可以使用匿名函數和包裝現有的jQuery代碼:

Demo

$.noConflict(); 

(function($){ 
    // original code here, with $ being a jQuery reference 
    // (but only within this code block) 
})(jQuery); 

// this will fail 
$('body').css('background-color','green'); // $ is not a function 
+0

喜布拉德,感謝你的快速反應。我剛剛嘗試將我的上述代碼粘貼到您建議的區域,並且它不會運行。我應該從自己的文件中刪除代碼並將其粘貼到我網站的標題中嗎? – user648466 2011-03-07 20:47:03

+0

@user:我想這取決於你如何使用它。將整個文件內容放在文件本身的匿名函數中。因此,「myfile.js」應該以'(function($){'結尾並以'}(jQuery)結尾;'但是應該在jQuery文件和你的頭文件的''行之後加載。 – 2011-03-07 20:48:38