diff --git a/src/core/events/onTouchMove.mjs b/src/core/events/onTouchMove.mjs index d23a917f3..2e9e39e73 100644 --- a/src/core/events/onTouchMove.mjs +++ b/src/core/events/onTouchMove.mjs @@ -174,6 +174,9 @@ export default function onTouchMove(event) { const evt = new window.CustomEvent('transitionend', { bubbles: true, cancelable: true, + detail: { + bySwiperTouchMove: true, + }, }); swiper.wrapperEl.dispatchEvent(evt); } diff --git a/src/modules/autoplay/autoplay.mjs b/src/modules/autoplay/autoplay.mjs index 2df9478b5..707d59fac 100644 --- a/src/modules/autoplay/autoplay.mjs +++ b/src/modules/autoplay/autoplay.mjs @@ -37,8 +37,9 @@ export default function Autoplay({ swiper, extendParams, on, emit, params }) { function onTransitionEnd(e) { if (!swiper || swiper.destroyed || !swiper.wrapperEl) return; if (e.target !== swiper.wrapperEl) return; + swiper.wrapperEl.removeEventListener('transitionend', onTransitionEnd); - if (pausedByPointerEnter) { + if (pausedByPointerEnter || (e.detail && e.detail.bySwiperTouchMove)) { return; } resume();