12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { updateClasses } from './swiper-classes';
  2. export function updateActiveIndex(s) {
  3. var translate = s._rtl ? s._translate : -s._translate;
  4. var newActiveIndex;
  5. var i;
  6. var snapIndex;
  7. for (i = 0; i < s._slidesGrid.length; i++) {
  8. if (typeof s._slidesGrid[i + 1] !== 'undefined') {
  9. if (translate >= s._slidesGrid[i] && translate < s._slidesGrid[i + 1] - (s._slidesGrid[i + 1] - s._slidesGrid[i]) / 2) {
  10. newActiveIndex = i;
  11. }
  12. else if (translate >= s._slidesGrid[i] && translate < s._slidesGrid[i + 1]) {
  13. newActiveIndex = i + 1;
  14. }
  15. }
  16. else {
  17. if (translate >= s._slidesGrid[i]) {
  18. newActiveIndex = i;
  19. }
  20. }
  21. }
  22. snapIndex = Math.floor(newActiveIndex / s.slidesPerGroup);
  23. if (snapIndex >= s._snapGrid.length)
  24. snapIndex = s._snapGrid.length - 1;
  25. if (newActiveIndex === s._activeIndex) {
  26. return;
  27. }
  28. s._snapIndex = snapIndex;
  29. s._previousIndex = s._activeIndex;
  30. s._activeIndex = newActiveIndex;
  31. updateClasses(s);
  32. updateRealIndex(s);
  33. }
  34. export function updateRealIndex(s) {
  35. var activeSlide = s._slides[s._activeIndex];
  36. if (activeSlide) {
  37. s.realIndex = parseInt(activeSlide.getAttribute('data-swiper-slide-index') || s._activeIndex, 10);
  38. }
  39. }
  40. //# sourceMappingURL=swiper-index.js.map