Javascript 一次切换一个Div/单击打开Div,它将关闭
我正在尝试切换div,以便一次只能打开一个div。我已经查看了提供的其他解决方案,但是提供的解决方案是这样的,如果我再次单击open div,它就不会关闭。我正在寻找当前打开的div在单击时再次关闭。感谢您给予的任何帮助。提前谢谢 JSFIDDLE: HTML JS: 除非有必要,否则只需抬起头,以避免“重新发明轮子”。引导程序库有一个折叠元素,可以满足您的需要Javascript 一次切换一个Div/单击打开Div,它将关闭,javascript,html,Javascript,Html,我正在尝试切换div,以便一次只能打开一个div。我已经查看了提供的其他解决方案,但是提供的解决方案是这样的,如果我再次单击open div,它就不会关闭。我正在寻找当前打开的div在单击时再次关闭。感谢您给予的任何帮助。提前谢谢 JSFIDDLE: HTML JS: 除非有必要,否则只需抬起头,以避免“重新发明轮子”。引导程序库有一个折叠元素,可以满足您的需要 看看它是否符合要求。从Twitter引导库创建了一个折叠元素 <table class="table table-condens
看看它是否符合要求。从Twitter引导库创建了一个折叠元素
<table class="table table-condensed" style="border-collapse:collapse;">
<thead>
<tr>
<th>Title</th>
<th>From</th>
<th>Utensil</th>
</tr>
</thead>
<tbody>
<tr class="list">
<td data-toggle="collapse" data-target="#cupcakes" class="accordion-toggle">Cupcakes</td>
<td class="from">Molly's Cupcakes</td>
<td>Chopsticks</td>
</tr>
<tr>
<td colspan="10" class="hiddenRow"><div class="accordion-body collapse" id="cupcakes">hello</div></td>
</tr>
<tr class="list">
<td data-toggle="collapse" data-target="#pizza" class="accordion-toggle">Pizza</td>
<td class="from">Roberta's</td>
<td>Knife</td>
</tr>
<tr>
<td colspan="10" class="hiddenRow"><div class="accordion-body collapse" id="pizza">bye</div></td>
</tr>
<tr class="list">
<td data-toggle="collapse" data-target="#pasta" class="accordion-toggle">Pasta</td>
<td>Basta Pasta</td>
<td>Spoon</td>
</tr>
<tr>
<td colspan="10" class="hiddenRow"><div class="accordion-body collapse" id="pasta">hi</div></tr>
</tr>
</tbody>
</table>
标题
从…起
器具
纸杯蛋糕
莫莉纸杯蛋糕
筷子
你好
披萨
罗伯塔的
刀
再见
意大利面食
巴斯塔面食
勺子
你好
JSFIDLE中的代码与您发布的代码不匹配。“没关系。”安德烈·杰瑟普对此表示歉意。更新了。那你能澄清一下说明吗?此代码是一个表,没有-单击时需要打开/关闭什么?而且,JSFIDLE中的代码不“工作”(单击时没有更改)。这是预期的吗?@AndreaJessup当用户单击.title时,它应该显示.description。有可能在一张桌子上实现吗?是的,JSFIDLE中的当前代码不起作用。谢谢你的帮助,我设法使它与折叠元素一起工作。谢谢你的帮助
.description{
display:none;
}
$('.title').on('click', function() {
var $this = $(this),
$next = $this.next();
// Check if another profile is open and close it
var $last = $('.description:visible', $this.parents('table'));
if ($last.length) {
$last.slideUp('fast');
}
// Show the new profile content only if we are opening a new profile
if ($last.parents('.list').index() !== $this.parent().index()) {
$next.slideDown('fast');
}
});
<table class="table table-condensed" style="border-collapse:collapse;">
<thead>
<tr>
<th>Title</th>
<th>From</th>
<th>Utensil</th>
</tr>
</thead>
<tbody>
<tr class="list">
<td data-toggle="collapse" data-target="#cupcakes" class="accordion-toggle">Cupcakes</td>
<td class="from">Molly's Cupcakes</td>
<td>Chopsticks</td>
</tr>
<tr>
<td colspan="10" class="hiddenRow"><div class="accordion-body collapse" id="cupcakes">hello</div></td>
</tr>
<tr class="list">
<td data-toggle="collapse" data-target="#pizza" class="accordion-toggle">Pizza</td>
<td class="from">Roberta's</td>
<td>Knife</td>
</tr>
<tr>
<td colspan="10" class="hiddenRow"><div class="accordion-body collapse" id="pizza">bye</div></td>
</tr>
<tr class="list">
<td data-toggle="collapse" data-target="#pasta" class="accordion-toggle">Pasta</td>
<td>Basta Pasta</td>
<td>Spoon</td>
</tr>
<tr>
<td colspan="10" class="hiddenRow"><div class="accordion-body collapse" id="pasta">hi</div></tr>
</tr>
</tbody>
</table>