diff options
| author | XhmikosR <[email protected]> | 2017-09-26 17:46:16 +0300 |
|---|---|---|
| committer | GitHub <[email protected]> | 2017-09-26 17:46:16 +0300 |
| commit | c090c79a709a84cb6e2bd5dbed6343ae49c861a1 (patch) | |
| tree | cadb5d1e7a94588047081bb8d8c4f92914aaf043 /js/src/collapse.js | |
| parent | 8e56145e45e9d58e23c5f339b6cac50e751e36a7 (diff) | |
| parent | 3eae92f1fec3c84acf38bd7e16a14eac48868334 (diff) | |
| download | bootstrap-c090c79a709a84cb6e2bd5dbed6343ae49c861a1.tar.xz bootstrap-c090c79a709a84cb6e2bd5dbed6343ae49c861a1.zip | |
Merge branch 'v4-dev' into btn-active
Diffstat (limited to 'js/src/collapse.js')
| -rw-r--r-- | js/src/collapse.js | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/js/src/collapse.js b/js/src/collapse.js index acc959d40..fa082f133 100644 --- a/js/src/collapse.js +++ b/js/src/collapse.js @@ -33,7 +33,7 @@ const Collapse = (() => { const DefaultType = { toggle : 'boolean', - parent : 'string' + parent : '(string|element)' } const Event = { @@ -289,7 +289,18 @@ const Collapse = (() => { } _getParent() { - const parent = $(this._config.parent)[0] + let parent = null + if (Util.isElement(this._config.parent)) { + parent = this._config.parent + + // it's a jQuery object + if (typeof this._config.parent.jquery !== 'undefined') { + parent = this._config.parent[0] + } + } else { + parent = $(this._config.parent)[0] + } + const selector = `[data-toggle="collapse"][data-parent="${this._config.parent}"]` @@ -363,7 +374,7 @@ const Collapse = (() => { $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) { // preventDefault only for <a> elements (which change the URL) not inside the collapsible element - if (event.target.tagName === 'A' && !$.contains(this, event.target)) { + if (event.currentTarget.tagName === 'A') { event.preventDefault() } |
