1

我有以下结构:

在此处输入图像描述

我想ul.children通过单击上面的另一个(条)来显示和隐藏。

它应该只显示/隐藏下面的一个,因为该页面充满了具有相同结构的无序列表。

所以我被困在这里:

$('#wpbdp-categories > .wpbdp-categories > li.cat-item > a').click(function() {
  ???
}); 

有什么建议么?

4

3 回答 3

1
$('#wpbdp-categories > .wpbdp-categories > li.cat-item > a').toggle(
    function() { $(this).next().show() },
    function() { $(this).next().hide() }
);

最简单的方法..

编辑:

.toggle()处理点击事件,所以你不需要为它定义点击事件。

http://api.jquery.com/toggle-event/

.toggle() 方法为点击事件绑定了一个处理程序,因此这里也适用于触发点击的规则。

于 2012-12-07T09:19:58.657 回答
1
$('#wpbdp-categories > .wpbdp-categories > li.cat-item > a').click(function() {
  $(this).siblings("ul.children").toggle();
}); 

我认为应该工作

于 2012-12-07T08:47:49.327 回答
1

尝试使用.next()

例如

$(this).next('.children').toggle();
于 2012-12-07T08:49:16.340 回答