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:
authorGeoSot <geo.sotis@gmail.com>2022-01-31 01:22:33 +0300
committerXhmikosR <xhmikosr@gmail.com>2022-02-19 15:52:36 +0300
commitd97125475b3a5cbbafe3100d5981fd456c92c722 (patch)
tree18b0ddaabe02d7d14f3a6f8f04ac24d98d09cc9b
parenta247fe9b27ec57152f07aaa5dfc79f633d2b6d10 (diff)
Carousel: merge slide functionality, regardless of whether it is animated or not
-rw-r--r--js/src/carousel.js36
1 files changed, 16 insertions, 20 deletions
diff --git a/js/src/carousel.js b/js/src/carousel.js
index 4cb03d51fe..00d9304953 100644
--- a/js/src/carousel.js
+++ b/js/src/carousel.js
@@ -372,39 +372,35 @@ class Carousel extends BaseComponent {
})
}
- if (this._element.classList.contains(CLASS_NAME_SLIDE)) {
- nextElement.classList.add(orderClassName)
+ nextElement.classList.add(orderClassName)
- reflow(nextElement)
+ reflow(nextElement)
- activeElement.classList.add(directionalClassName)
- nextElement.classList.add(directionalClassName)
+ activeElement.classList.add(directionalClassName)
+ nextElement.classList.add(directionalClassName)
- const completeCallBack = () => {
- nextElement.classList.remove(directionalClassName, orderClassName)
- nextElement.classList.add(CLASS_NAME_ACTIVE)
-
- activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)
-
- this._isSliding = false
-
- setTimeout(triggerSlidEvent, 0)
- }
-
- this._queueCallback(completeCallBack, activeElement, true)
- } else {
- activeElement.classList.remove(CLASS_NAME_ACTIVE)
+ const completeCallBack = () => {
+ nextElement.classList.remove(directionalClassName, orderClassName)
nextElement.classList.add(CLASS_NAME_ACTIVE)
+ activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)
+
this._isSliding = false
- triggerSlidEvent()
+
+ setTimeout(triggerSlidEvent, 0)
}
+ this._queueCallback(completeCallBack, activeElement, this._isAnimated())
+
if (isCycling) {
this.cycle()
}
}
+ _isAnimated() {
+ return this._element.classList.contains(CLASS_NAME_SLIDE)
+ }
+
_getActive() {
return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)
}