【发布时间】:2012-09-25 07:29:52
【问题描述】:
我在一个页面上有几个 div。每个 div 都有一个标题,我可以单击该标题来切换相应 div 的可见性。默认情况下,div 设置为display:none。
我在每个 div 的点击功能中都使用了#ids,但是因为我在同一页面上有多个 div。我想使用一个.class,这样我就有一个类,因此我有一个控制可见性的函数。
我猜我需要使用 .parent 和 .sibling 类来执行此操作。
以下是我的代码的摘录: HTML:
<div>
<legend>
<a id="show_table" class="show_table" href="#">
<span id="plus_minus"></span>Div
</a>
</legend>
<div class="toshow" id="toshow">Div to be shown</div>
</div>
JS:
$('#show_table').click(function(){
$("#toshow").slideToggle();
})
我想提高效率,这样我就不必使用 #ids 为每个 div 执行此操作我想知道如何使用单个 .class ,可能是父母和兄弟姐妹它来做这个。
作为补充,我希望在plus_minus 范围上具有减号/加号切换功能。我使用个人 ids 进行了相同的工作。我如何能够使用单个.class 来实现这一点。我尝试使用以下方法:
$('.div_show').click( function(){
$(this).parent().next().slideToggle();
if($(this).parent().next().is(':visible'){
$(this).closest('span').find('plus_minus').text('+');
}
else {
$(this).closest('span').find('plus_minus').text('-');
}
});
但它似乎不起作用。
感谢有关如何实现此 +/- 切换功能的建议。
【问题讨论】: