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
diff options
context:
space:
mode:
authorMark Otto <markdotto@gmail.com>2018-06-22 08:55:23 +0300
committerMark Otto <markdotto@gmail.com>2018-06-22 08:55:23 +0300
commiteadeab9d1cf6a1d8315a5aab35f247034931ea6e (patch)
tree660e3dd5d924afcf3cd595ac7dd41fb86842cdc9 /js/dist/collapse.js
parente59265c42db4c9fec397fd92e9646def0b2b4200 (diff)
dist
Diffstat (limited to 'js/dist/collapse.js')
-rw-r--r--js/dist/collapse.js38
1 files changed, 23 insertions, 15 deletions
diff --git a/js/dist/collapse.js b/js/dist/collapse.js
index 529a3cc6bd..54e8cac285 100644
--- a/js/dist/collapse.js
+++ b/js/dist/collapse.js
@@ -67,14 +67,17 @@ var Collapse = function ($) {
this._isTransitioning = false;
this._element = element;
this._config = this._getConfig(config);
- this._triggerArray = $.makeArray($("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
- var tabToggles = $(Selector.DATA_TOGGLE);
+ this._triggerArray = $.makeArray(document.querySelectorAll("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
+ var toggleList = [].slice.call(document.querySelectorAll(Selector.DATA_TOGGLE));
- for (var i = 0; i < tabToggles.length; i++) {
- var elem = tabToggles[i];
+ for (var i = 0, len = toggleList.length; i < len; i++) {
+ var elem = toggleList[i];
var selector = Util.getSelectorFromElement(elem);
+ var filterElement = [].slice.call(document.querySelectorAll(selector)).filter(function (foundElem) {
+ return foundElem === element;
+ });
- if (selector !== null && $(selector).filter(element).length > 0) {
+ if (selector !== null && filterElement.length > 0) {
this._selector = selector;
this._triggerArray.push(elem);
@@ -115,7 +118,9 @@ var Collapse = function ($) {
var activesData;
if (this._parent) {
- actives = $.makeArray($(this._parent).find(Selector.ACTIVES).filter("[data-parent=\"" + this._config.parent + "\"]"));
+ actives = [].slice.call(this._parent.querySelectorAll(Selector.ACTIVES)).filter(function (elem) {
+ return elem.getAttribute('data-parent') === _this._config.parent;
+ });
if (actives.length === 0) {
actives = null;
@@ -150,7 +155,7 @@ var Collapse = function ($) {
$(this._element).removeClass(ClassName.COLLAPSE).addClass(ClassName.COLLAPSING);
this._element.style[dimension] = 0;
- if (this._triggerArray.length > 0) {
+ if (this._triggerArray.length) {
$(this._triggerArray).removeClass(ClassName.COLLAPSED).attr('aria-expanded', true);
}
@@ -191,14 +196,15 @@ var Collapse = function ($) {
this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px";
Util.reflow(this._element);
$(this._element).addClass(ClassName.COLLAPSING).removeClass(ClassName.COLLAPSE).removeClass(ClassName.SHOW);
+ var triggerArrayLength = this._triggerArray.length;
- if (this._triggerArray.length > 0) {
- for (var i = 0; i < this._triggerArray.length; i++) {
+ if (triggerArrayLength > 0) {
+ for (var i = 0; i < triggerArrayLength; i++) {
var trigger = this._triggerArray[i];
var selector = Util.getSelectorFromElement(trigger);
if (selector !== null) {
- var $elem = $(selector);
+ var $elem = $([].slice.call(document.querySelectorAll(selector)));
if (!$elem.hasClass(ClassName.SHOW)) {
$(trigger).addClass(ClassName.COLLAPSED).attr('aria-expanded', false);
@@ -259,11 +265,12 @@ var Collapse = function ($) {
parent = this._config.parent[0];
}
} else {
- parent = $(this._config.parent)[0];
+ parent = document.querySelector(this._config.parent);
}
var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]";
- $(parent).find(selector).each(function (i, element) {
+ var children = [].slice.call(parent.querySelectorAll(selector));
+ $(children).each(function (i, element) {
_this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
});
return parent;
@@ -273,7 +280,7 @@ var Collapse = function ($) {
if (element) {
var isOpen = $(element).hasClass(ClassName.SHOW);
- if (triggerArray.length > 0) {
+ if (triggerArray.length) {
$(triggerArray).toggleClass(ClassName.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
}
}
@@ -282,7 +289,7 @@ var Collapse = function ($) {
Collapse._getTargetFromElement = function _getTargetFromElement(element) {
var selector = Util.getSelectorFromElement(element);
- return selector ? $(selector)[0] : null;
+ return selector ? document.querySelector(selector) : null;
};
Collapse._jQueryInterface = function _jQueryInterface(config) {
@@ -340,7 +347,8 @@ var Collapse = function ($) {
var $trigger = $(this);
var selector = Util.getSelectorFromElement(this);
- $(selector).each(function () {
+ var selectors = [].slice.call(document.querySelectorAll(selector));
+ $(selectors).each(function () {
var $target = $(this);
var data = $target.data(DATA_KEY);
var config = data ? 'toggle' : $trigger.data();