作者:嘉sen | 来源:互联网 | 2020-08-19 21:32
本篇文章给大家带来的内容是关于监听element-ui table滚动事件的代码示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
背景:做管理平台的项目,用到了element-ui,需要通过监听el-table滚动的位置来获取最新的数据,那么怎么样监听el-table的滚动呢?
准备:我们默认的技术栈是 vue+element-ui
template代码:
绑定监听事件
mounted() {
// 获取需要绑定的table
this.dom = this.$refs.table.bodyWrapper
this.dom.addEventListener('scroll', () => {
// 滚动距离
let scrollTop = this.dom.scrollTop
// 变量windowHeight是可视区的高度
let windowHeight = this.dom.clientHeight || this.dom.clientHeight
// 变量scrollHeight是滚动条的总高度
let scrollHeight = this.dom.scrollHeight || this.dom.scrollHeight
if (scrollTop + windowHeight === scrollHeight) {
// 获取到的不是全部数据 当滚动到底部 继续获取新的数据
if (!this.allData) this.getMoreLog()
console.log('scrollTop', scrollTop + 'windowHeight', windowHeight + 'scrollHeight', scrollHeight)
}
})
}
获取到新的数据后,调整滚动条的位置
getMoreLog() {
...
this.dom.scrollTop = this.dom.scrollTop - 100
...
}
结语:至此我们已经完成了对table的绑定!
本篇文章到这里就已经全部结束了,更多其他精彩内容可以关注PHP中文网的Javascript视频教程栏目!
以上就是监听element-ui table滚动事件的代码示例的详细内容,更多请关注 第一PHP社区 其它相关文章!