aboutsummaryrefslogtreecommitdiff
path: root/js/src/collapse.js
diff options
context:
space:
mode:
authorXhmikosR <[email protected]>2017-09-26 17:46:16 +0300
committerGitHub <[email protected]>2017-09-26 17:46:16 +0300
commitc090c79a709a84cb6e2bd5dbed6343ae49c861a1 (patch)
treecadb5d1e7a94588047081bb8d8c4f92914aaf043 /js/src/collapse.js
parent8e56145e45e9d58e23c5f339b6cac50e751e36a7 (diff)
parent3eae92f1fec3c84acf38bd7e16a14eac48868334 (diff)
downloadbootstrap-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.js17
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()
}