当前位置: 首页 > news >正文

使用el-table实现自动滚动

文章目录

    • 概要
    • 技术实现
    • 完整代码

概要

在前端开发大屏的时候,我们会用到表格数据展示,有时候为了使用户体验更加好,会增加表格自动滚动。下边我将以示例代码,用element UI的el-table来讲一下。

技术实现

1 .增加dom监听,鼠标放上去的时候不滚动,鼠标离开的时候滚动

  	  let status = true;scrollDom.addEventListener('mouseover', () => {status = false;});scrollDom.addEventListener('mouseout', () => {status = true;});

2 通过判断dom的scrollHeight和scrollTop的关系,来实现滚动

	this.timer = setInterval(() => {if (status) {debuggerscrollDom.scrollTop += 1;if (scrollDom.scrollHeight - (scrollDom.clientHeight + scrollDom.scrollTop) < 1) {scrollDom.scrollTop = 0;}}}, 100);

3.当不需要使用,或者表格需要重新渲染的时候,我们需要清掉定时器

  clearInterval(this.timer);

完整代码

 startAutoScroll() {const scrollDom = this.$refs.tableList.bodyWrapper;let status = true;scrollDom.addEventListener('mouseover', () => {status = false;});scrollDom.addEventListener('mouseout', () => {status = true;});this.timer = setInterval(() => {if (status) {debuggerscrollDom.scrollTop += 1;if (scrollDom.scrollHeight - (scrollDom.clientHeight + scrollDom.scrollTop) < 1) {scrollDom.scrollTop = 0;}}}, 100);},
http://www.lryc.cn/news/406333.html

相关文章:

  • Angular由一个bug说起之八:实践中遇到的一个数据颗粒度的问题
  • day13(DNS域名解析)
  • uboot的mmc partconf命令
  • 数据结构经典测题3
  • tensorboard add_text() 停止自动为尖括号标记添加配对的结束括号</>
  • sql-libs通关详解
  • 【STM32】当按键具有上拉电阻时GPIO应该配置什么模式?怎么用按键去控制LED翻转?
  • EXO-chatgpt_api 解释
  • 新能源汽车的充电网络安全威胁和防护措施
  • Linux中利用消息队列给两个程序切换显示到前台
  • C语言实例-约瑟夫生者死者小游戏
  • 算法类学习笔记 ———— 红绿灯检测
  • git命令使用详细介绍
  • WebStorm中在Terminal终端运行脚本时报错无法加载文件进行数字签名。无法在当前系统上运行该脚本。有关运行脚本和设置执行策略的详细信息,请参阅
  • 【Java题解】以二进制加法的方式来计算两个内容为二进制数字的字符串相加的结果
  • docker -v 到底和那个一样?type=volume还是type=bind的解释
  • linux自动化构建工具--make/makefile
  • 学习记录——day15 数据结构 链表
  • vue3实现在新标签中打开指定的网址
  • Qt基础 | QSqlTableModel 的使用
  • RPA软件-影刀使用
  • HarmonyOS NEXT零基础入门到实战-第四部分
  • vue2获取视频时长
  • Linux中进程的控制
  • 【源码】Sharding-JDBC源码分析之JDBC
  • Java | Leetcode Java题解之第273题整数转换英文表示
  • 数据结构之深入理解简单选择排序:原理、实现与示例(C,C++)
  • 使用vscode搜索打开的文件夹下的文件
  • 力扣778.水位上升的泳池中游泳
  • Nacos-2.4.0最新版本docker镜像,本人亲自制作,部署十分方便,兼容postgresql最新版本17和16,奉献给大家了