UNPKG

swiper

Version:

Most modern mobile touch slider and framework with hardware accelerated transitions

45 lines (38 loc) 1.34 kB
export default function removeSlide(slidesIndexes) { var swiper = this; var params = swiper.params, $wrapperEl = swiper.$wrapperEl, activeIndex = swiper.activeIndex; var activeIndexBuffer = activeIndex; if (params.loop) { activeIndexBuffer -= swiper.loopedSlides; swiper.loopDestroy(); swiper.slides = $wrapperEl.children("." + params.slideClass); } var newActiveIndex = activeIndexBuffer; var indexToRemove; if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) { for (var i = 0; i < slidesIndexes.length; i += 1) { indexToRemove = slidesIndexes[i]; if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove(); if (indexToRemove < newActiveIndex) newActiveIndex -= 1; } newActiveIndex = Math.max(newActiveIndex, 0); } else { indexToRemove = slidesIndexes; if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove(); if (indexToRemove < newActiveIndex) newActiveIndex -= 1; newActiveIndex = Math.max(newActiveIndex, 0); } if (params.loop) { swiper.loopCreate(); } if (!(params.observer && swiper.support.observer)) { swiper.update(); } if (params.loop) { swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false); } else { swiper.slideTo(newActiveIndex, 0, false); } }