UNPKG

swiper

Version:

Most modern mobile touch slider and framework with hardware accelerated transitions

35 lines (29 loc) 1.02 kB
export default function onScroll() { var swiper = this; var wrapperEl = swiper.wrapperEl, rtlTranslate = swiper.rtlTranslate; swiper.previousTranslate = swiper.translate; if (swiper.isHorizontal()) { if (rtlTranslate) { swiper.translate = wrapperEl.scrollWidth - wrapperEl.offsetWidth - wrapperEl.scrollLeft; } else { swiper.translate = -wrapperEl.scrollLeft; } } else { swiper.translate = -wrapperEl.scrollTop; } // eslint-disable-next-line if (swiper.translate === -0) swiper.translate = 0; swiper.updateActiveIndex(); swiper.updateSlidesClasses(); var newProgress; var translatesDiff = swiper.maxTranslate() - swiper.minTranslate(); if (translatesDiff === 0) { newProgress = 0; } else { newProgress = (swiper.translate - swiper.minTranslate()) / translatesDiff; } if (newProgress !== swiper.progress) { swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate); } swiper.emit('setTranslate', swiper.translate, false); }