我正在尝试添加一个箭头,该箭头可以更改为我的手风琴菜单。我相信我需要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');
}
这一切都适用于手风琴菜单,并在顶级标题旁边添加一个图像。但是,我不确定选择如何或为什么没有出现在 HTML 中或为我更改图像?有没有人知道我哪里出错了。我并不完全理解Jquery,正如你可能知道的那样!
谢谢
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;
});
});
编辑检查这个小提琴