mirror of
https://github.com/twbs/bootstrap.git
synced 2025-08-07 06:06:47 +02:00
Carousel: merge slide functionality, regardless of whether it is animated or not
This commit is contained in:
@@ -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)
|
activeElement.classList.add(directionalClassName)
|
||||||
nextElement.classList.add(directionalClassName)
|
nextElement.classList.add(directionalClassName)
|
||||||
|
|
||||||
const completeCallBack = () => {
|
const completeCallBack = () => {
|
||||||
nextElement.classList.remove(directionalClassName, orderClassName)
|
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)
|
|
||||||
nextElement.classList.add(CLASS_NAME_ACTIVE)
|
nextElement.classList.add(CLASS_NAME_ACTIVE)
|
||||||
|
|
||||||
|
activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)
|
||||||
|
|
||||||
this._isSliding = false
|
this._isSliding = false
|
||||||
triggerSlidEvent()
|
|
||||||
|
setTimeout(triggerSlidEvent, 0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this._queueCallback(completeCallBack, activeElement, this._isAnimated())
|
||||||
|
|
||||||
if (isCycling) {
|
if (isCycling) {
|
||||||
this.cycle()
|
this.cycle()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
_isAnimated() {
|
||||||
|
return this._element.classList.contains(CLASS_NAME_SLIDE)
|
||||||
|
}
|
||||||
|
|
||||||
_getActive() {
|
_getActive() {
|
||||||
return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)
|
return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user