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 相关文章推荐
jquery获取input表单值的代码
Apr 19 Javascript
缓动函数requestAnimationFrame 更好的实现浏览器经动画
Dec 07 Javascript
js call方法详细介绍(js 的继承)
Nov 18 Javascript
jQuery 获取多选框的值及多选框中文的函数
May 16 Javascript
JQuery之proxy实现绑定代理方法
Aug 01 Javascript
全面解析vue中的数据双向绑定
May 10 Javascript
js实现股票实时刷新数据案例
May 14 Javascript
jQuery简单判断值是否存在于数组中的方法示例
Apr 17 jQuery
JS将网址url转化为JSON格式的方法
Jul 02 Javascript
详解原生JS动态添加和删除类
Mar 26 Javascript
pageGroup.js实现分页功能
Jul 27 Javascript
如何在vue中使用video.js播放m3u8格式的视频
Feb 01 Vue.js
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
PHP 地址栏信息的获取代码
2009/01/07 PHP
PHP7新特性foreach 修改示例介绍
2016/08/26 PHP
彻底搞懂JS无缝滚动代码
2007/01/03 Javascript
定义select的边框颜色
2008/04/28 Javascript
基于jquery实现图片广告轮换效果代码
2011/07/07 Javascript
jquery如何把数组变为字符串传到服务端并处理
2014/04/30 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
2015/09/30 Javascript
jQuery用FormData实现文件上传的方法
2016/11/21 Javascript
Javascript中return的使用与闭包详解
2017/01/11 Javascript
详解AngularJS脏检查机制及$timeout的妙用
2017/06/19 Javascript
微信小程序url与token设置详解
2017/09/26 Javascript
详解vue-cli 接口代理配置
2017/12/13 Javascript
原生JS写Ajax的请求函数功能
2017/12/22 Javascript
完美解决linux下node.js全局模块找不到的情况
2018/05/16 Javascript
快速解决vue动态绑定多个class的官方实例语法无效的问题
2018/09/05 Javascript
浅探express路由和中间件的实现
2019/09/30 Javascript
微信小程序添加插屏广告并设置显示频率(一天一次)
2019/12/06 Javascript
[58:58]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第二场
2018/04/05 DOTA
探究Python中isalnum()方法的使用
2015/05/18 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
pandas创建新Dataframe并添加多行的实例
2018/04/08 Python
Python 实现在文件中的每一行添加一个逗号
2018/04/29 Python
使用11行Python代码盗取了室友的U盘内容
2018/10/23 Python
python中的print()输出
2019/04/12 Python
浅谈keras 模型用于预测时的注意事项
2020/06/27 Python
CSS3属性box-shadow使用详细教程
2012/01/21 HTML / CSS
html5跳转小程序wx-open-launch-weapp踩坑
2020/12/02 HTML / CSS
GANT英国官方网上商店:甘特衬衫
2018/02/06 全球购物
Footshop法国:购买运动鞋
2020/01/19 全球购物
人民教师的自我评价分享
2014/02/21 职场文书
餐厅执行经理岗位职责范本
2014/02/26 职场文书
新年主持词
2014/03/27 职场文书
小学新学期寄语
2014/04/02 职场文书
法人委托书范本格式
2014/09/15 职场文书
2014年药店工作总结
2014/11/20 职场文书
深入浅出的讲解:信号调制到底是如何实现的
2022/02/18 无线电