我正在开发一个joomla 2.5组件,我在我的代码中使用了很多jQuery。 我正在使用jQuery noconflict()来避免任何冲突...... 问题在于一个非常简单的显示/隐藏jquery代码用于div,这意味着允许用户隐藏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;
}
任何想法?任何帮助将非常感谢! 谢谢!
答案 0 :(得分:3)
我建议使用自动调用匿名函数,这样你就可以做这样的事情而不需要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/。
答案 1 :(得分:1)
$
应该是您的document.ready函数中的jQuery
。
jQuery(document).ready(function(){
//^^^------here;