vue swiper 元件切換tab後自動輪播失效,手動滑一下才自動輪播生效的問題
vue swiper 元件切換tab後自動輪播失效,手動滑一下才自動輪播生效的問題
在網上找了好多解決方案
類似於 {
observer:true
observerParents:true
} 這兩個配置,設定和沒設定沒有任何卻別,不解決問題,不生效
1.問題產生原因
輪播圖自動輪播需要通過settimeout記錄輪播到那一幀與這一幀的時間戳,來回切換tab導致這部分輪播元件的dom消失又顯示,因此settimeout觸發器消失,無法知道下一幀到哪裡,所以自動輪播停止。
2. 解決方案
-
不需要keep-alive快取的情況:每一次切換tab,重新渲染元件,不要快取,這樣輪播圖每次進頁面會初始化一次,即可解決問題
-
需要 keep-alive 快取:比如元件套在列表裡,列表需要快取,而輪播也受到外層keep-alive的影響。此時看程式碼
```javascirpt dom 部分 簡寫 <swiper :options="swiperOption" ref="mySwiper"> <swiper-slide > ...... </swiper-slide> </swiper> computed:{ swiper(){ return this.$refs.mySwiper.swiper } }, activated(){ this.swiper.slideTo(0,0) 引數:跳轉到那個圖,時間是多少 this.swiper.autoplay.start() 開始輪播 }, deactivated(){ this.swiper.autoplay.stop() 停止輪播 } 邏輯就是在切換tab時將當前tab的輪播圖暫停,目標頁輪播圖開啟 this.swiper.slideTo(0,0) 的目的是解決在輪播圖輪播中切換tab導致輪播圖自動切換死掉的問題,相當於初始化一下。 ```
-
暴力一點,在切換tab時直接把該部分元件dom 刪除掉,切換回來的時候再載入出來,該問題也可以得到解決。
相關文章
- Vue 仿咕咚運動Swiper輪播Vue
- Flutter 拆輪子之flutter_swiper自動無線輪播卡片Flutter
- 小說APP原始碼,手動滑動輪播圖時,輪播圖跟隨移動APP原始碼
- 直播軟體搭建,橫版自動滑動的輪播圖
- 直播軟體app開發,左右自動滑動的輪播圖廣告APP
- 直播平臺製作,ViewPager自動輪播,手指按住停止輪播Viewpager
- 成品直播原始碼,輪播圖無縫切換以及自動懸停原始碼
- Vue實現內部元件輪播切換效果Vue元件
- 造輪子之圖片輪播元件(swiper)元件
- 移動端輪播圖滑動外掛-swipe
- 雙輪播加切換動畫效果元件動畫元件
- Android複習之旅--ViewPager(自動輪播條)AndroidViewpager
- Swiper輪播檢視器
- 手動實現輪播圖(二):迴圈滾動、定時切換與指示器
- Vue封裝Swiper實現圖片輪播Vue封裝
- 微信小程式swiper輪播圖卡死來回瘋狂輪播微信小程式
- css實現滾動輪播CSS
- vue輪播圖Vue
- 直播app開發,實現輪播圖上下自動滑動展示效果APP
- 解決ionic2/ionic3輪播圖切換頁面或者點選過後不自動輪圖
- layui 輪播圖動態資料不顯示問題UI
- react無縫滾動輪播圖React
- vue元件之輪播圖的實現Vue元件
- Flutter 篇 輪播圖 flutter_swiperFlutter
- 2020 用html jQuery實現廣告輪播圖自動切換 滾動頁面 滑鼠懸浮下標且左右切換圖片HTMLjQuery
- 微信小程式之swiper輪播圖中的圖片自適應高度微信小程式
- 不到200行用Vue實現類似Swiper.js的輪播元件VueJS元件
- vue元件之路之輪播圖的實現Vue元件
- flutter好用的輪子推薦三-超強輪播圖SwiperFlutter
- 使用JavaScript設定Tab欄自動切換JavaScript
- BtCarousel輪播元件 - 一款易於使用,定製化的輪播元件元件
- 直播平臺原始碼,純JS實現左右滑動輪播圖原始碼JS
- jQuery輪播圖之上下輪播jQuery
- 直播系統原始碼,點選滾動的輪播圖自動跳轉到相應頁原始碼
- vue輪播圖外掛Vue
- VUE開發一個圖片輪播的元件Vue元件
- 使用jQuery實現的平滑滾動輪播圖jQuery
- 視覺差緩動效果的輪播--React版視覺React