vue中使用vue-seamless-scroll插件實(shí)現(xiàn)列表無縫滾動(dòng)效果
需求:使用vue-seamless-scroll插件實(shí)現(xiàn)列表無縫滾動(dòng),也可以添加相應(yīng)的點(diǎn)擊跳轉(zhuǎn),點(diǎn)擊事件會(huì)存在點(diǎn)擊失效的問題。支持上下左右無縫滾動(dòng),單步滾動(dòng)停留時(shí)間,以及水平方向的手動(dòng)切換。
效果圖:
基于vue的無縫滾動(dòng)組件
注意:需要給父容器一個(gè)
height
和:data='Array'
和overfolw:hidden;
左右滾動(dòng)需要給ul容器一個(gè)初始化css width
。
參考配置:
向下滾動(dòng)
direction:0
向下滾動(dòng)
direction:1
向左滾動(dòng)
direction:2
向右滾動(dòng)
direction:3
鼠標(biāo)懸停關(guān)閉
hoverStop:false
單行停頓
singleHeight:26
單行停頓時(shí)間
singleHeight:26
waitTime:2500
1、安裝
npm install vue-seamless-scroll --save
2、引入使用
局部 頁面使用:
import vueSeamlessScroll from "vue-seamless-scroll"; components: { vueSeamlessScroll, }, data(){ return { bbsData:[] } }, computed: { bbsOption () { return { step: 0.2, // 數(shù)值越大速度滾動(dòng)越快 limitMoveNum: 3, // 開始無縫滾動(dòng)的數(shù)據(jù)量 this.bbsData.length hoverStop: false, // 是否開啟鼠標(biāo)懸停stop direction: 1, // 0向下 1向上 2向左 3向右 openWatch: true, // 開啟數(shù)據(jù)實(shí)時(shí)監(jiān)控刷新dom singleHeight: 0, // 單步運(yùn)動(dòng)停止的高度(默認(rèn)值0是無縫不停止的滾動(dòng)) direction => 0/1 singleWidth: 0, // 單步運(yùn)動(dòng)停止的寬度(默認(rèn)值0是無縫不停止的滾動(dòng)) direction => 2/3 waitTime: 1000 // 單步運(yùn)動(dòng)停止的時(shí)間(默認(rèn)值1000ms) } } }
全局main.js引入:
import vueSeamlessScroll from 'vue-seamless-scroll' Vue.use(vueSeamlessScroll)
主要代碼:
bbsData是接口獲取的數(shù)據(jù)綁定,根據(jù)自己綁定定義。
<div class="three-info mt40 bbsInfo" v-if="bbsData.length>0" @click.stop="handleBBs($event)"> <vue-seamless-scroll :data="bbsData" :class-option="bbsOption" > <ul class="ul-scoll"> <li v-for="item in bbsData" :key='item.topicId' class="info-item flex align-items"> <div class=" fontSize20 info-tag mr10 bbs-tag">論壇</div> <div class=" fontSize26 color3 van-ellipsis" style="flex:1" :data-id="item.topicId">{{item.topicTitle}}</div> </li> </ul> </vue-seamless-scroll> </div>
.three-info{ padding:0 20px 20px; border-radius: 10px; } .info-item{ padding-bottom:20px; padding-top:20px; border-bottom:1px solid #F1F6F8; } .info-item .info-tag{ width: 62px; padding:6px 10px; background: #3E91FF; color:#fff; text-align: center; border-radius: 6px; } .bbsInfo{ background:#FEFBE8; height:264px; overflow: hidden; } .info-item .bbs-tag{ background:#FAAF3D; }
到此這篇關(guān)于vue中使用vue-seamless-scroll插件無縫滾動(dòng)的文章就介紹到這了,更多相關(guān)vue無縫滾動(dòng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
django簡(jiǎn)單的前后端分離的數(shù)據(jù)傳輸實(shí)例 axios
這篇文章主要介紹了django簡(jiǎn)單的前后端分離的數(shù)據(jù)傳輸實(shí)例 axios,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-05-05vue單頁應(yīng)用加百度統(tǒng)計(jì)代碼(親測(cè)有效)
這篇文章主要介紹了vue單頁應(yīng)用加百度統(tǒng)計(jì)代碼的解決方法,需要的朋友參考下吧2018-01-01使用vue 國際化i18n 實(shí)現(xiàn)多實(shí)現(xiàn)語言切換功能
這篇文章主要介紹了使用vue 國際化i18n 多實(shí)現(xiàn)語言切換功能,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2018-10-10vue3中setup-script的應(yīng)用實(shí)例
script-setup是一個(gè)比較有爭(zhēng)議的新特性,作為 setup 函數(shù)的語法糖,褒貶不一,不過經(jīng)歷了幾次迭代之后,目前在體驗(yàn)上來說,感受還是非常棒的,這篇文章主要給大家介紹了關(guān)于vue3中setup-script應(yīng)用的相關(guān)資料,需要的朋友可以參考下2022-01-01vue自定義鍵盤信息、監(jiān)聽數(shù)據(jù)變化的方法示例【基于vm.$watch】
這篇文章主要介紹了vue自定義鍵盤信息、監(jiān)聽數(shù)據(jù)變化的方法,結(jié)合實(shí)例形式分析了vue.js基于vm.$watch進(jìn)行事件監(jiān)聽相關(guān)操作技巧,需要的朋友可以參考下2019-03-03Vue監(jiān)聽一個(gè)數(shù)組id是否與另一個(gè)數(shù)組id相同的方法
今天小編就為大家分享一篇Vue監(jiān)聽一個(gè)數(shù)組id是否與另一個(gè)數(shù)組id相同的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-09-09通過GASP讓vue實(shí)現(xiàn)動(dòng)態(tài)效果實(shí)例代碼詳解
GASP是一個(gè)JavaScript動(dòng)畫庫,它支持快速開發(fā)高性能的 Web 動(dòng)畫。GASP 使我們能夠輕松輕松快速的將動(dòng)畫串在一起,來創(chuàng)造一個(gè)高內(nèi)聚的流暢動(dòng)畫序列。這篇文章主要介紹了通過GASP讓vue實(shí)現(xiàn)動(dòng)態(tài)效果,需要的朋友可以參考下2019-11-11Vue3中watch監(jiān)聽器及源碼學(xué)習(xí)
本文主要介紹了Vue3中watch監(jiān)聽器及源碼學(xué)習(xí),Watch偵聽器在Vue3中特性進(jìn)行了一些改變和優(yōu)化,下面來詳解的介紹一下基本使用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-01-01VUE項(xiàng)目axios請(qǐng)求頭更改Content-Type操作
這篇文章主要介紹了VUE項(xiàng)目axios請(qǐng)求頭更改Content-Type操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-07-07