使用 swiper 的过程当中我的总结css
解决方法1: var mySwiper = myApp.swiper('.guest-wrapper',{ observer: true,//修改swiper本身或子元素时,自动初始化swiper observeParents: true//修改swiper的父元素时,自动初始化swiper }); 解决方法2: 直接写死宽高 var mySwiper = myApp.swiper('.guest-wrapper',{ width:500, height:500 });
//外层的父级 swiper 初始化 window.window_swiper = new Swiper('.window_swiper_container', { speed: 800, mousewheel: true, simulateTouch: false, nested: true, on: { onSlideChangeStart: function(swiper) { //滑动父级须要激活滚轮事件 swiper.enableMousewheelControl(); } } }); // 内层子 swiper 初始化(可用在多个子 swiper 上) var swiper = new Swiper('.{{ns}}-swiper', { simulateTouch: false, mousewheel: true, nested: true, on: { slideChangeTransitionStart: function () { //此处禁止 外层 swiper window.window_swiper.mousewheel.disable(); }, slideChangeTransitionEnd: function () { window.window_swiper.mousewheel.enable(); } } });
设为true开启图片延迟加载默认值,使preloadImages无效。或者设置延迟加载选项。 图片延迟加载:须要将图片img标签的src改写成data-src,而且增长类名swiper-lazy。 背景图延迟加载:载体增长属性data-background,而且增长类名swiper-lazy。 还能够加一个预加载,<div class="swiper-lazy-preloader"></div> 或者白色的<div class="swiper-lazy-preloader swiper-lazy-preloader-white"></div> 当你设置了slidesPerView:'auto' 或者 slidesPerView > 1,还须要开启watchSlidesVisibility。 var mySwiper = new Swiper('.swiper-container', { lazy: { loadPrevNext: true, }, });
resistanceRatiohtml
抵抗率。边缘抵抗力的大小比例。值越小抵抗越大越难将slide拖离边缘,0时彻底没法拖离。ios
长菜单超出隐藏滚动切换web
默认为false,普通模式:slide滑动时只滑动一格,并自动贴合wrapper,设置为true则变为free模式,slide会根据惯性滑动且不会贴合。api
var mySwiper = new Swiper('.swiper-container',{ slidesPerView : 2,//'auto' //slidesPerView : 3.7, //若是设置为auto(例如制做全屏展现时的页脚部分),最后一个slide在键盘或鼠标滚动时可能会直接跳到倒数第三个slide, //此时能够手动设置activeIndex解决,以下 onTransitionEnd: function(swiper){ if(swiper.progress==1){ swiper.activeIndex=swiper.slides.length-1 } } })
slide的切换效果,默认为"slide"(位移切换),可设置为"fade"(淡入)"cube"(方块)"coverflow"(3d流)"flip"(3d翻转)。app
//css html, body { position: relative; height: 100%; } body { background: #fff; font-family: Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 14px; color:#000; margin: 0; padding: 0; } .swiper-container { width: 700px; height: 100%; } .swiper-slide { font-size: 18px; height: auto; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 30px; font-size:13px;font-family:microsoft yahei; line-height:1.8; } p{ margin-bottom:1em; } //html <div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-slide"> <p>无限多的内容无限多的内容无限多的内容无限多的内容</p> </div> </div> <!-- Add Scroll Bar --> <div class="swiper-scrollbar"></div> </div> //js var swiper = new Swiper('.swiper-container', { scrollbar: '.swiper-scrollbar', //滚动条的类名 direction: 'vertical', // 竖列排行 slidesPerView: 'auto', // 可同时展现多少个 slide mousewheelControl: true, //鼠标滚轮 freeMode: true, // slide 是否贴合侧边 roundLengths : true, //防止文字模糊 });
独立分页元素,当启用(默认)而且分页元素的传入值为字符串时,swiper会优先查找子元素匹配这些元素。可应用于分页器,按钮和滚动条。ide
var mySwiper = new Swiper('.swiper-container',{ pagination : '.swiper-pagination', uniqueNavElements :false, })