aboutsummaryrefslogtreecommitdiff
path: root/js/src
diff options
context:
space:
mode:
Diffstat (limited to 'js/src')
-rw-r--r--js/src/collapse.js13
1 files changed, 11 insertions, 2 deletions
diff --git a/js/src/collapse.js b/js/src/collapse.js
index 28c4493cc..e2c9efe11 100644
--- a/js/src/collapse.js
+++ b/js/src/collapse.js
@@ -57,7 +57,8 @@ const Collapse = (($) => {
const Selector = {
ACTIVES : '.card > .show, .card > .collapsing',
- DATA_TOGGLE : '[data-toggle="collapse"]'
+ DATA_TOGGLE : '[data-toggle="collapse"]',
+ DATA_CHILDREN : 'data-children'
}
@@ -84,6 +85,14 @@ const Collapse = (($) => {
this._addAriaAndCollapsedClass(this._element, this._triggerArray)
}
+ this._selectorActives = Selector.ACTIVES
+ if (this._parent) {
+ const childrenSelector = this._parent.hasAttribute(Selector.DATA_CHILDREN) ? this._parent.getAttribute(Selector.DATA_CHILDREN) : null
+ if (childrenSelector !== null) {
+ this._selectorActives = childrenSelector + ' > .show, ' + childrenSelector + ' > .collapsing'
+ }
+ }
+
if (this._config.toggle) {
this.toggle()
}
@@ -124,7 +133,7 @@ const Collapse = (($) => {
let activesData
if (this._parent) {
- actives = $.makeArray($(this._parent).find(Selector.ACTIVES))
+ actives = $.makeArray($(this._parent).find(this._selectorActives))
if (!actives.length) {
actives = null
}