aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob <[email protected]>2013-08-07 23:37:05 -0700
committerJacob <[email protected]>2013-08-07 23:37:05 -0700
commitd22bd3a6608e623a55907b65a9d953acfc784130 (patch)
tree9d43432c5962157a26b432aae727e9783a83ca2b
parentd32012337465b7584c0dfabf8cce845075193d6d (diff)
parentfb57eda26857f1312e4415926135e675895b13e1 (diff)
downloadbootstrap-d22bd3a6608e623a55907b65a9d953acfc784130.tar.xz
bootstrap-d22bd3a6608e623a55907b65a9d953acfc784130.zip
Merge pull request #9089 from jdiamond/3.0.0-wip
accordion's data-parent can't contain dots
-rw-r--r--js/collapse.js2
-rw-r--r--js/tests/unit/collapse.js35
2 files changed, 36 insertions, 1 deletions
diff --git a/js/collapse.js b/js/collapse.js
index ab575515d..b20022a2e 100644
--- a/js/collapse.js
+++ b/js/collapse.js
@@ -169,7 +169,7 @@
var $parent = parent && $(parent)
if (!data || !data.transitioning) {
- if ($parent) $parent.find('[data-toggle=collapse][data-parent=' + parent + ']').not($this).addClass('collapsed')
+ if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed')
$this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
}
diff --git a/js/tests/unit/collapse.js b/js/tests/unit/collapse.js
index 73799c75d..11b2cf838 100644
--- a/js/tests/unit/collapse.js
+++ b/js/tests/unit/collapse.js
@@ -126,4 +126,39 @@ $(function () {
target3.click()
})
+ test("should allow dots in data-parent", function () {
+ $.support.transition = false
+ stop()
+
+ var accordion = $('<div class="accordion"><div class="accordion-group"></div><div class="accordion-group"></div><div class="accordion-group"></div></div>')
+ .appendTo($('#qunit-fixture'))
+
+ var target1 = $('<a data-toggle="collapse" href="#body1" data-parent=".accordion"></a>')
+ .appendTo(accordion.find('.accordion-group').eq(0))
+
+ var collapsible1 = $('<div id="body1" class="in"></div>')
+ .appendTo(accordion.find('.accordion-group').eq(0))
+
+ var target2 = $('<a class="collapsed" data-toggle="collapse" href="#body2" data-parent=".accordion"></a>')
+ .appendTo(accordion.find('.accordion-group').eq(1))
+
+ var collapsible2 = $('<div id="body2"></div>')
+ .appendTo(accordion.find('.accordion-group').eq(1))
+
+ var target3 = $('<a class="collapsed" data-toggle="collapse" href="#body3" data-parent=".accordion"></a>')
+ .appendTo(accordion.find('.accordion-group').eq(2))
+
+ var collapsible3 = $('<div id="body3"></div>')
+ .appendTo(accordion.find('.accordion-group').eq(2))
+ .on('show.bs.collapse', function () {
+ ok(target1.hasClass('collapsed'))
+ ok(target2.hasClass('collapsed'))
+ ok(!target3.hasClass('collapsed'))
+
+ start()
+ })
+
+ target3.click()
+ })
+
})