layui 实现table翻页滚动条位置保持不变的例子


Posted in Javascript onSeptember 05, 2019

最近使用了layui table但是发现了一系列问题,由于被封装过不好自己修改,比如翻页后滑动条每次都会复位,导致体验不好,通过调试,我发现layui table并没有给div加id标签,我通过class定位表格div位置。

layui 实现table翻页滚动条位置保持不变的例子

可以看到 滚动条所在div class="layui-table-body layui-table-main"

我在layui table定义了一个父div,防止多个table时定位错误,先定位父div,再寻找内部的datatable

<div class="table-responsive" id="table_and_page_div_id" >
       <!--此处放一个用户表格-->
       <table id="user_list_table_id" lay-filter="tabl_lay_filter"></table>
       <div class="btn-group" style="margin-left: auto;margin-right: auto;" id="limt_butt_id">
       </div>
 
      </div>

原理就是先获取父div对象,然后再父div对象中找到 class=layui-table-main的对象,然后就可以操作滑动条了。

//获取表格重载之前scrollTop位置
       var dev_obj;   //layui table 父div
       var layuitable = null; //当前的layui table
       var scrollTop = 0;  //记录位置
 
       dev_obj = document.getElementById('table_and_page_div_id'); //table的父div
       if (dev_obj != null)
       {
        layuitable = dev_obj.getElementsByClassName("layui-table-main");
       }
       if (layuitable != null && layuitable.length > 0)
       {
        scrollTop = layuitable[0].scrollTop; //layuitable获取到的是 class=layui-table-main的集合
       }
 
       //刷新当前页
       g_table_config.data = g_UserInfoDataPage;
       g_tableIns.reload(g_table_config);//表格重载
 
       layer.close(g_layer_msg_index);  //关闭提示框
 
       //还原scroll位置
       if (layuitable != null && layuitable.length > 0)
       {
        layuitable[0].scrollTop = scrollTop;
       }

以上这篇layui 实现table翻页滚动条位置保持不变的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript中的关键字和保留字整理
Oct 16 Javascript
5个书写JavaScript代码的坏习惯,看看你中枪了没?
Nov 06 Javascript
学习JavaScript设计模式之策略模式
Jan 12 Javascript
javascript下使用Promise封装FileReader
Feb 19 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
Jan 22 Javascript
jquery中绑定事件的异同
Feb 28 Javascript
javascript简单写的判断电话号码实例
May 24 Javascript
bootstrapvalidator之API学习教程
Jun 29 Javascript
对vue下点击事件传参和不传参的区别详解
Sep 15 Javascript
使用express来代理服务的方法
Jun 21 Javascript
Node绑定全局TraceID的实现方法
Nov 14 Javascript
bootstrap-table后端分页功能完整实例
Jun 01 Javascript
vue中如何实现后台管理系统的权限控制的方法步骤
Sep 05 #Javascript
Vue 动态路由的实现及 Springsecurity 按钮级别的权限控制
Sep 05 #Javascript
layui 对弹窗 form表单赋值的实现方法
Sep 04 #Javascript
layui-table对返回的数据进行转变显示的实例
Sep 04 #Javascript
layui table数据修改的回显方法
Sep 04 #Javascript
Vue实现商品详情页的评价列表功能
Sep 04 #Javascript
Layui 数据表格批量删除和多条件搜索的实例
Sep 04 #Javascript
You might like
windows下PHP APACHE MYSQ完整配置
2007/01/02 PHP
PHPwind整合最土系统用户同步登录实现方法
2010/12/08 PHP
PHP用身份证号获取星座和生肖的方法
2013/11/07 PHP
php提示Warning:mysql_fetch_array() expects的解决方法
2014/12/16 PHP
PHP数据库操作三:redis用法分析
2017/08/16 PHP
获取页面高度,窗口高度,滚动条高度等参数值getPageSize,getPageScroll
2006/09/22 Javascript
jquery下操作HTML控件的实现代码
2010/01/12 Javascript
基于jQuery的星级评分插件
2011/08/12 Javascript
jQuery.parseJSON(json)将JSON字符串转换成js对象
2014/07/27 Javascript
深入剖析javascript中的exec与match方法
2016/05/18 Javascript
JS变量中有var定义和无var定义的区别以及es6中let命令和const命令
2017/02/19 Javascript
JS简单判断字符在另一个字符串中出现次数的2种常用方法
2017/04/20 Javascript
JavaScript中一些特殊的字符运算
2017/08/17 Javascript
JS实现用特殊符号替换字符串的中间部分区域的实例代码
2018/07/24 Javascript
JavaScript原型链与继承操作实例总结
2018/08/24 Javascript
angularJs中orderBy筛选以及filter过滤数据的方法
2018/09/30 Javascript
VUE Elemen-ui之穿梭框使用方法详解
2021/01/19 Javascript
ES6学习教程之Promise用法详解
2020/11/22 Javascript
vue 项目@change多个参数传值多个事件的操作
2021/01/29 Vue.js
[03:11]TI9战队档案 - Alliance
2019/08/20 DOTA
Python设计模式之观察者模式实例
2014/04/26 Python
python查看zip包中文件及大小的方法
2015/07/09 Python
Django框架模板文件使用及模板文件加载顺序分析
2019/05/23 Python
Python中那些 Pythonic的写法详解
2019/07/02 Python
Python3 main函数使用sys.argv传入多个参数的实现
2019/12/25 Python
美国鞋类购物网站:Shiekh Shoes
2016/08/21 全球购物
劳力士官方珠宝商:J.R. Dunn Jewelers
2018/09/29 全球购物
PHP如何设置和取得Cookie值
2015/06/30 面试题
一封普通求职者的求职信
2013/11/20 职场文书
高中生期末评语
2014/01/28 职场文书
护理专业毕业生自我鉴定总结
2014/03/24 职场文书
主要负责人任命书
2014/06/06 职场文书
2014年团员学习十八大思想汇报
2014/09/13 职场文书
2014年电工工作总结
2014/11/20 职场文书
社区三八妇女节活动总结
2015/02/06 职场文书
html5表单的required属性使用
2021/07/07 HTML / CSS