diff --git a/js/collapse.js b/js/collapse.js index b2678e0a54..7c3c20da17 100644 --- a/js/collapse.js +++ b/js/collapse.js @@ -145,7 +145,10 @@ || e.preventDefault() || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 var option = $(target).data('collapse') ? 'toggle' : $this.data() + var parent = $this.attr('data-parent') + var $parent = parent && $(parent) + if ($parent) $parent.find('[data-toggle=collapse][data-parent=' + parent + ']').not($this).addClass('collapsed') $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed') $(target).collapse(option) }) diff --git a/js/tests/unit/collapse.js b/js/tests/unit/collapse.js index dd2cee27db..73799c75dd 100644 --- a/js/tests/unit/collapse.js +++ b/js/tests/unit/collapse.js @@ -91,4 +91,39 @@ $(function () { target.click() }) + test("should remove active class from inactive accordion targets", function () { + $.support.transition = false + stop() + + var accordion = $('