index.js 895 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. function checkOverflow() {
  2. const swiper = this;
  3. const {
  4. isLocked: wasLocked,
  5. params
  6. } = swiper;
  7. const {
  8. slidesOffsetBefore
  9. } = params;
  10. if (slidesOffsetBefore) {
  11. const lastSlideIndex = swiper.slides.length - 1;
  12. const lastSlideRightEdge = swiper.slidesGrid[lastSlideIndex] + swiper.slidesSizesGrid[lastSlideIndex] + slidesOffsetBefore * 2;
  13. swiper.isLocked = swiper.size > lastSlideRightEdge;
  14. } else {
  15. swiper.isLocked = swiper.snapGrid.length === 1;
  16. }
  17. if (params.allowSlideNext === true) {
  18. swiper.allowSlideNext = !swiper.isLocked;
  19. }
  20. if (params.allowSlidePrev === true) {
  21. swiper.allowSlidePrev = !swiper.isLocked;
  22. }
  23. if (wasLocked && wasLocked !== swiper.isLocked) {
  24. swiper.isEnd = false;
  25. }
  26. if (wasLocked !== swiper.isLocked) {
  27. swiper.emit(swiper.isLocked ? 'lock' : 'unlock');
  28. }
  29. }
  30. export default {
  31. checkOverflow
  32. };