slideNext.js 941 B

123456789101112131415161718192021222324252627282930
  1. /* eslint no-unused-vars: "off" */
  2. export default function slideNext(speed = this.params.speed, runCallbacks = true, internal) {
  3. const swiper = this;
  4. const {
  5. animating,
  6. enabled,
  7. params
  8. } = swiper;
  9. if (!enabled) return swiper;
  10. let perGroup = params.slidesPerGroup;
  11. if (params.slidesPerView === 'auto' && params.slidesPerGroup === 1 && params.slidesPerGroupAuto) {
  12. perGroup = Math.max(swiper.slidesPerViewDynamic('current', true), 1);
  13. }
  14. const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : perGroup;
  15. if (params.loop) {
  16. if (animating && params.loopPreventsSlide) return false;
  17. swiper.loopFix(); // eslint-disable-next-line
  18. swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;
  19. }
  20. if (params.rewind && swiper.isEnd) {
  21. return swiper.slideTo(0, speed, runCallbacks, internal);
  22. }
  23. return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);
  24. }