ElementUI table無縫循環(huán)滾動(dòng)的示例代碼
恰好實(shí)習(xí)的時(shí)候遇到了這個(gè)需求,而且網(wǎng)上的代碼有點(diǎn)僵硬,所以我改了改,順手水一篇博客出來。
部分思路來源:https://blog.csdn.net/qq_38543537/article/details/122842943
但是來源的代碼,在滾動(dòng)到底部時(shí)會(huì)有非常生硬的切換,我這里改了一些代碼,讓它的滾動(dòng)變得流暢。
效果:

代碼:
HTML:
<el-table ref="table" :data="TableData" stripe style="width: 100%" height="402">
<el-table-column prop="num" label="序號(hào)" width="80"> </el-table-column>
<!-- 其它table列 -->
</el-table>JS:
data() {
return {
timer: null,
//注意:它需要將展示的數(shù)據(jù)額外復(fù)制一份(為了無縫滾動(dòng))
errorTableData: [
{ num:1},
{ num:2},
{ num:3},
{ num:4},
{ num:5},
{ num:6},
{ num:7},
{ num:8},
{ num:9},
{ num:10},
{ num:1},
{ num:2},
{ num:3},
{ num:4},
{ num:5},
{ num:6},
{ num:7},
{ num:8},
{ num:9},
{ num:10},
]
};
},
methods: {
//自動(dòng)循環(huán)播放
autoCycle() {
//拿到相關(guān)元素
const wrapper = this.$refs.table.bodyWrapper
this.timer = setInterval(() => {
// 元素自增距離頂部1像素
wrapper.scrollTop += 1
// 判斷元素是否滾動(dòng)到底部(可視高度+距離頂部=整個(gè)高度)
if (wrapper.clientHeight + wrapper.scrollTop == wrapper.scrollHeight) {
// 重置table距離頂部距離。值=(滾動(dòng)到底部時(shí),距離頂部的大小) - 整個(gè)高度/2
wrapper.scrollTop = wrapper.scrollTop - wrapper.scrollHeight/2
}
}, 50)
}
}補(bǔ)充:element UI 中table表格循環(huán)滾動(dòng)方法
首先在表格上添加ref和設(shè)置高度,如下:
<el-table :data="tableList" height="300" ref="table"></el-table>
循環(huán)方法如下:
mounted() {
?? ?// 拿到表格掛載后的真實(shí)DOM
?? ?const table = this.$refs.table
?? ?// 拿到表格中承載數(shù)據(jù)的div元素
?? ?const divData = table.bodyWrapper
?? ?// 拿到元素后,對(duì)元素進(jìn)行定時(shí)增加距離頂部距離,實(shí)現(xiàn)滾動(dòng)效果(此配置為每100毫秒移動(dòng)1像素)
?? ?setInterval(() => {
?? ??? ?// 元素自增距離頂部1像素
?? ??? ?divData.scrollTop += 1
?? ??? ?// 判斷元素是否滾動(dòng)到底部(可視高度+距離頂部=整個(gè)高度)
?? ??? ?if (divData.clientHeight + divData.scrollTop == divData.scrollHeight) {
?? ??? ??? ?// 重置table距離頂部距離
?? ??? ??? ?divData.scrollTop = 0
?? ??? ?}
?? ?}, 100)
}至此實(shí)現(xiàn)列表滾動(dòng),測(cè)試有效!
到此這篇關(guān)于ElementUI table無縫循環(huán)滾動(dòng)的示例代碼的文章就介紹到這了,更多相關(guān)ElementUI table無縫循環(huán)滾動(dòng)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
一文教你實(shí)現(xiàn)JavaScript防抖優(yōu)化代碼
在我們前端編程中,假如我們要給后端發(fā)送請(qǐng)求,萬一手抖多點(diǎn)了幾次,多發(fā)送了幾遍怎么辦,那就得用防抖處理,下面小編就來教大家如何實(shí)現(xiàn)防抖吧2023-11-11
純js實(shí)現(xiàn)瀑布流布局及ajax動(dòng)態(tài)新增數(shù)據(jù)
這篇文章主要介紹了基于javascript實(shí)現(xiàn)瀑布流布局,及ajax動(dòng)態(tài)新增數(shù)據(jù)的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-04-04
javascript跟隨鼠標(biāo)x,y坐標(biāo)移動(dòng)的字效果
javascript跟隨鼠標(biāo)x,y坐標(biāo)移動(dòng)的字效果...2007-04-04
JavaScript對(duì)象_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要為大家詳細(xì)介紹了JavaScript對(duì)象的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
一文徹底理解js原生語法prototype,__proto__和constructor
作為一名前端工程師,必須搞懂JS中的prototype、__proto__與constructor屬性,相信很多初學(xué)者對(duì)這些屬性存在許多困惑,容易把它們混淆,下面這篇文章主要給大家介紹了關(guān)于js原生語法prototype,__proto__和constructor的相關(guān)資料,需要的朋友可以參考下2021-10-10
JavaScript實(shí)現(xiàn)大文件上傳的示例代碼
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)大文件上傳功能的示例代碼,文中的代碼講解詳細(xì),對(duì)我們學(xué)習(xí)JavaScript有一定幫助,感興趣可以跟隨小編一起學(xué)習(xí)一下2022-11-11

