1234567891011121314151617181920212223242526272829303132333435363738 |
- export default function prependSlide(slides) {
- const swiper = this;
- const {
- params,
- activeIndex,
- slidesEl
- } = swiper;
- if (params.loop) {
- swiper.loopDestroy();
- }
- let newActiveIndex = activeIndex + 1;
- const prependElement = slideEl => {
- if (typeof slideEl === 'string') {
- const tempDOM = document.createElement('div');
- tempDOM.innerHTML = slideEl;
- slidesEl.prepend(tempDOM.children[0]);
- tempDOM.innerHTML = '';
- } else {
- slidesEl.prepend(slideEl);
- }
- };
- if (typeof slides === 'object' && 'length' in slides) {
- for (let i = 0; i < slides.length; i += 1) {
- if (slides[i]) prependElement(slides[i]);
- }
- newActiveIndex = activeIndex + slides.length;
- } else {
- prependElement(slides);
- }
- swiper.recalcSlides();
- if (params.loop) {
- swiper.loopCreate();
- }
- if (!params.observer || swiper.isElement) {
- swiper.update();
- }
- swiper.slideTo(newActiveIndex, 0, false);
- }
|