Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/twbs/bootstrap.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/js/src
diff options
context:
space:
mode:
authorJohann-S <johann.servoire@gmail.com>2018-09-10 12:01:14 +0300
committerJohann-S <johann.servoire@gmail.com>2018-09-10 22:10:00 +0300
commit6e2a823a44063af96749d54560808656e007c2a8 (patch)
tree9e70195b7d4685dd34a1e3c964be92fd3be4e9e7 /js/src
parentde75bd0a4fea8bc1443173a338e7f6888f82aa1d (diff)
collapse children with no data-parent
Diffstat (limited to 'js/src')
-rw-r--r--js/src/collapse.js23
1 files changed, 14 insertions, 9 deletions
diff --git a/js/src/collapse.js b/js/src/collapse.js
index d3404630a4..ad98ffa6aa 100644
--- a/js/src/collapse.js
+++ b/js/src/collapse.js
@@ -127,7 +127,13 @@ const Collapse = (($) => {
if (this._parent) {
actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES))
- .filter((elem) => elem.getAttribute('data-parent') === this._config.parent)
+ .filter((elem) => {
+ if (typeof this._config.parent === 'string') {
+ return elem.getAttribute('data-parent') === this._config.parent
+ }
+
+ return elem.classList.contains(ClassName.COLLAPSE)
+ })
if (actives.length === 0) {
actives = null
@@ -282,7 +288,8 @@ const Collapse = (($) => {
}
_getParent() {
- let parent = null
+ let parent
+
if (Util.isElement(this._config.parent)) {
parent = this._config.parent
@@ -309,14 +316,12 @@ const Collapse = (($) => {
}
_addAriaAndCollapsedClass(element, triggerArray) {
- if (element) {
- const isOpen = $(element).hasClass(ClassName.SHOW)
+ const isOpen = $(element).hasClass(ClassName.SHOW)
- if (triggerArray.length) {
- $(triggerArray)
- .toggleClass(ClassName.COLLAPSED, !isOpen)
- .attr('aria-expanded', isOpen)
- }
+ if (triggerArray.length) {
+ $(triggerArray)
+ .toggleClass(ClassName.COLLAPSED, !isOpen)
+ .attr('aria-expanded', isOpen)
}
}