layui 表格 固定列覆盖滚动条导致 表格错位

对于layui,大家都用过吧:轻量级框架,使用方便,快捷,入手难度小,但是这些优点就不代表你没有踩到它的坑。

目前遇到一个问题,搞得焦头烂额的,也问了很多的人,度娘也是无能为力。

先来几张图吧:

    

第一:滚动条在固定列的上面---固定列方法:fixed: 'right' ,固定在表格右边

问题: 改变表格高度后--上,下拉动或者放大缩小页面或者页面过小后,滚动条被固定列覆盖,表格前后不对应-错位现象出现

如:

 

 

原因分析:1,固定列与原表格呈现的是:兄弟关系而不是子集关系

2:然而两个div中都有 ayui-table-body 这样一个属性,导致在改变高度的时候整个表格和固定列的高度是一样的

    但是并不能一样,因为有滚动条的原因:滚动条占高17px,滚动条占了表格高,却没有占据固定列的高,所以就覆盖了滚动条-----------------此情况只在有滚动条的情况下,没有滚动条则不管,因为不会错位

3:办法:在处理表格高度的同时也要处理固定列的高度(相差一个滚动条的高度--17px);

 

4:另外:判断是否滚动条--jqury写法

function hasScrollbar() { 
   return document.body.scrollHeight > (window.innerHeight || document.documentElement.clientHeight);
}

 

js:只需将

document.body 换成你的元素的即可 ; 注:js获取元素需要加上[0],指明是哪一个具体元素

 

 

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值