From b13eecaeec6f27db8d83a8808ed4178033370e05 Mon Sep 17 00:00:00 2001 From: fat Date: Wed, 17 Jul 2013 23:52:29 -0700 Subject: [PATCH] fixes #7880 --- js/collapse.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/js/collapse.js b/js/collapse.js index 619ccc720b..8d4c6afecd 100644 --- a/js/collapse.js +++ b/js/collapse.js @@ -145,21 +145,22 @@ // ================= $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) { - var $this = $(this), href - var target = $this.attr('data-target') + var $this = $(this), href + var target = $this.attr('data-target') || e.preventDefault() || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 - var data = $(target).data('bs.collapse') - var option = data ? 'toggle' : $this.data() - var parent = $this.attr('data-parent') + var $target = $(target) + var data = $target.data('bs.collapse') + var option = data ? 'toggle' : $this.data() + var parent = $this.attr('data-parent') var $parent = parent && $(parent) if (!data || !data.transitioning) { if ($parent) $parent.find('[data-toggle=collapse][data-parent=' + parent + ']').not($this).addClass('collapsed') - $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed') + $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed') } - $(target).collapse(option) + $target.collapse(option) }) }(window.jQuery); -- 2.47.2