簡體   English   中英

jQuery noconflict()破壞了我的jquery代碼。

[英]jQuery noconflict() breaks my jquery code..?

我正在開發一個joomla 2.5組件,並且在我的代碼中使用了很多jQuery。 我正在使用jQuery noconflict()以避免任何沖突...問題是非常簡單的div顯示/隱藏jquery代碼,該代碼旨在使用戶能夠隱藏div。

$(document).ready(function(){
    jQuery('.slidingDiv').show();
    jQuery('.show_hide').show();

jQuery('.show_hide').click(function(){
jQuery('.slidingDiv').slideToggle();
}); });

每當我包含jQuery noconflict()時,如下所示:

JFactory::getDocument()->addScriptDeclaration('jQuery.noConflict()');

上面的show / hide腳本不起作用,但是同一頁面上的其他jquery腳本也可以正常工作!

html實現:

<div class="slidingDiv">
        <a href="#" class="show_hide"><img style="float:right;"src="/images/close.png" alt="hide"></a> text here </div>

和CSS:

.slidingDiv {
height:85px;
background-color: #6A5C53;
padding:10px;
margin:4px auto;
margin-bottom: 10px;
border-radius: 6px;
moz-border-radius:6px;
webkit-border-radius:6px;
width:920px;
z-index: 50;}


.show_hide {
    display:none;
}

有任何想法嗎? 任何幫助將不勝感激! 謝謝!

我建議使用自調用匿名函數,以便您可以執行以下操作,而無需使用jQuery.noConflict()聲明:

(function($) {
  $(document).ready(function(){
    $('.slidingDiv').show();
    $('.show_hide').show();
    $('.show_hide').click(function(){
        $('.slidingDiv').slideToggle();
    });
  });
})(jQuery);

有關更多詳細信息,請參見http://blog.themeforest.net/tutorials/ask-jw-decoding-self-invoking-anonymous-functions/

$應該是document.ready函數中的jQuery

  jQuery(document).ready(function(){
//^^^------here;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM