HTML
<div style="border:1px solid red;width:200px;">
<div class="wpsc_categorisation_group">
<ul class="wpsc_categories wpsc_top_level_categories">
<li><a href="link1">main link 1</a>
<ul>
<li><a>test 1</a></li>
<li><a>test 2</a></li>
<li><a>test 3</a></li>
</ul>
</li>
</ul>
<div class="clear_category_group"></div>
</div>
<div class="wpsc_categorisation_group">
<ul class="wpsc_categories wpsc_top_level_categories">
<li><a href="link2">main link 2</a>
<ul>
<li><a>test 1</a></li>
<li><a>test 2</a></li>
<li><a>test 3</a></li>
</ul>
</li>
</ul>
<div class="clear_category_group"></div>
</div>
</div>
CSS
div.wpsc_categorisation_group ul li {position:relative;}
div.wpsc_categorisation_group ul li ul {display:none;}
ul.wpsc_top_level_categories {padding-bottom:0 !important;}
ul.wpsc_top_level_categories li {}
ul.wpsc_top_level_categories li:hover {cursor:pointer;}
ul.wpsc_top_level_categories li ul li a span {background:none !important;}
span.collapse-arrow {background:red;width:10px;height:9px;float:right;margin-top:5px;}
的Javascript
jQuery('div.wpsc_categorisation_group ul li ul').slideUp().hide();
jQuery('div.wpsc_categorisation_group ul li').click(function() {
jQuery(this).parent().find('ul').slideToggle();
});
jQuery('div.wpsc_categorisation_group ul li a').append('<span class="collapse-arrow"> </span>');
这是我的jsfidlle sample
我真的需要帮助......
我非常感谢能得到的任何帮助......: - (
答案 0 :(得分:0)
尝试此代码..对于第一个要求..
$('div.wpsc_categorisation_group ul li ul').slideUp().hide();
$('.wpsc_categories').on('click', 'a', function(e) {
e.preventDefault(); // Prevent the Default Action
if (e.target.className == 'collapse-arrow') { // Trigger only
// If clicked on span
$(this).closest('ul').find('ul').slideToggle();
}
});
$('div.wpsc_categorisation_group ul li a')
.append('<span class="collapse-arrow"> </span>');
将点击事件委派给Anchor并仅在点击带有collapse-arrow
类的范围时切换ul ..
第二 req有点不同,如果你要进入另一个页面,你可以将状态存储在cookie或会话中,并在每个页面加载时重新填充。 第三次 - 上下文中没有更改HTML