1. 程式人生 > >js 移動端 tab切換欄下使用多個Swiper

js 移動端 tab切換欄下使用多個Swiper

做個心得小記錄,引用了bootstrap的tab切換欄和Swiper相結合,需要再每個tab欄下使用一個swiper滾動,每個swiper都要經過初始化,問題就是永遠只有第一個tab欄的swiper生效,第二,三個無效。解決方案如下,在初始化中新增兩個屬性,observer:true,observeParents:true。此處順便提一下,Swiper的自帶屬性,如swiper-wrapper,swiper-slide等,並不能被隨意更改,樣式設定可以通過設定其他的類名,id名來更改,且swiper-wrapper下如果加了其他不帶有swiper-slide屬性的div(或 其他元素),將會對頁面滾動產生影響。

var swiper = new Swiper('#chart .swiper-container', {
    scrollbar: '#chart .swiper-scrollbar',
scrollbarHide: true,
slidesPerView: 'auto',
grabCursor: true,
direction : 'vertical',
observer:true,//修改swiper自己或子元素時,自動初始化swiper
observeParents:true//修改swiper的父元素時,自動初始化swiper
});
var swiper2 = new Swiper
('#details .swiper-container', { scrollbar: '#details .swiper-scrollbar', scrollbarHide: true, slidesPerView: 'auto', grabCursor: true, direction : 'vertical', observer:true,//修改swiper自己或子元素時,自動初始化swiper observeParents:true//修改swiper的父元素時,自動初始化swiper });