2014-11-06 84 views
0

我有一个自举手风琴和手风琴标题我有两个div。一个div显示(可见1)手风琴关闭时。另一个显示手风琴是开放的(可见的2)。见FIDDLEBootstrap手风琴切换逻辑

但问题是,当我打开手风琴,并再次关闭相同的手风琴可见2 div出现而不是visible1。我不知道我做了什么错误。我的鬃毛目标是当手风琴关闭时它应该显示visible1,当手风琴打开时应该显示visible2。 任何帮助将不胜感激。

JS

$('body').on('click', '.list-bar', function() { 

    $(".visiable1").slideDown("fast"); 
    $(".visiable2").slideUp("fast"); 

    $(this).children(".visiable1").slideUp(); 
    $(this).children(".visiable2").slideDown(); 


});  

回答

2

勾成Bootstrap panel's collapse event

$(document).on('hidden.bs.collapse shown.bs.collapse', '.panel', function() { 
    $(this).find('.visiable1, .visiable2').slideToggle('fast'); 
}); 
+0

非常感谢你为我找到这个。这是完美的 – Raihan 2014-11-06 20:50:38

+0

当然。将其标记为“已接受”。 – 2014-11-06 20:56:46

0

您遇到的是被点击每个标题的时候,你不知道,如果该项目已打开的问题打开或关闭。

当你点击一个标题时,你会导致visiable2滑落,这将使visibility2成为无论如何显示的标题。

解决此问题的一种方法是向当前打开的元素添加一个类,并将其用作确定是否应显示或隐藏标签的方法。