jquery - Jquery removeClass + addClass?

  显示原文与译文双语对照的内容
0 0

我正在尝试添加一个改变 accordion 菜单的箭头。 我想我需要Jquery的removeClass函数。

我现在已经到了这一步了

html/php:


<dl id="narrow-by-list">
 <?php $_filters = $this->getFilters()?>
 <?php foreach ($_filters as $_filter):?>
 <?php if($_filter->getItemsCount()):?>
 <dt class=""><a href="/"><?php echo $this->__($_filter->getName())?></a></dt>
 <dd><?php echo $_filter->getHtml()?></dd>
 <?php endif;?>
 <?php endforeach;?>
</dl>

jQuery:


<script type="text/javascript">
jQuery(document).ready(function(){
 jQuery("dl#narrow-by-list> dd:not(:first)").hide();
 jQuery("dl#narrow-by-list> dt a").click(function(){
 jQuery("dl#narrow-by-list> dd:visible").slideUp("fast");
 jQuery(this).parent().next().slideDown("fast");;

 return false;

 jQuery('.selected').removeClass('selected'); 
 thisObj.addClass('selected');
 var content = thisObj.parent().next();
 content.slideDown('fast');

 return false;
 });
});
</script>

css:


#narrow-by-list> dt a {
 padding-left: 20px;
 background-image: url('/images/bullet.png');
 background-repeat:no-repeat;
 background-position: left center;
}
#narrow-by-list> dt a.selected{
 background-image: url('/images/bulletselected.png');
}

这都可以使用 accordion 菜单和在顶级标题旁边的添加图像。 不过,我不确定选择是如何或者为什么不在HTML中出现或者更改图像的。 有谁知道我的错误。 我不完全理解 Jquery,你可能会知道 !

谢谢

时间: 原作者:

0 0

 jQuery(document).ready(function(){
 jQuery("dl#narrow-by-list> dt").first().addClass('selected'); 
 jQuery("dl#narrow-by-list> dd:not(:first)").hide();
 jQuery("dl#narrow-by-list> dd:not(:first)").hide();
 jQuery("dl#narrow-by-list> dt a").click(function(event){
 if(jQuery(this).parent().hasClass('selected'))
 {
 return false;
 }
 event.preventDefault();
 jQuery('.selected').removeClass('selected'); 
 jQuery(this).parent().addClass('selected'); 
 jQuery("dl#narrow-by-list> dd:visible").slideUp("fast");
 jQuery(this).parent().next().slideDown("fast"); 
 return false;
 });
 });

EDIT检查这个

...