我想展开和折叠 div。为此,我使用:-
<ul class="link">
<li>main link 1<span>[-]</span>
<ul class="inner_div" style="display:block">
<li><a>test 1</a></li>
<li><a>test 2</a></li>
<li><a>test 3</a></li>
</ul>
</li>
</ul>
<ul class="link">
<li>main link 2<span>[+]</span>
<ul class="inner_div">
<li><a>test 1</a></li>
<li><a>test 2</a></li>
<li><a>test 3</a></li>
</ul>
</li>
</ul>
<ul class="link">
<li>main link 3<span>[+]</span>
<ul class="inner_div">
<li><a>test 1</a></li>
<li><a>test 2</a></li>
<li><a>test 3</a></li>
</ul>
</li>
</ul>
<ul class="link">
<li>main link 4<span>[+]</span>
<ul class="inner_div">
<li><a>test 1</a></li>
<li><a>test 2</a></li>
<li><a>test 3</a></li>
</ul>
</li>
</ul>
脚本是:-
$('.link span').click(function(){
$(".inner_div").hide();
var $ul = $(this).next();
$(this).html( $ul.is(':visible') ? '[+]' : '[–]');
$ul.slideToggle();
});
CSS是: -
.inner_div{ display:none; }
.link span { float: right; cursor: pointer; }
它可以工作,但是当我再次单击展开 div 时,它应该被隐藏。但它并没有隐藏。另一个问题是加减号无法正常工作。