问题: el–table组件中,column在设置了fixed属性的情况下下,垂直滚动会出现表格错位的问题。
分析: column在设置了fixed=“left”或fixed=“right”后,在table的对应位置增加了对应个数的column,它们都被设置为position: fixed。下面的table只是被固定的column遮盖,当垂直方向有滚动事件时,两侧固定column会动态计算滚动高度。但是实际使用中计算的时候会受头部样式或padding的影响而计算出错,导致出现表格错位的问题。
笔者是给table组件添加自定义指令解决的,有兴趣的朋友可以自己封装组件。
// 解决table组件添加fixed属性滚动时表格错位问题
Vue.directive(‘fixed–scroll‘, {
let targetEl = document.querySelector(“.el–table .el–table__body–wrapper“);
targetEl.addEventListener(“scroll“, setFixedScrollTop);
function setFixedScrollTop(params) {
let tableHead = document.querySelector(“.el–table .el-table__header–wrapper“);
let height = tableHead.clientHeight;
let fixedLeft = document.querySelector(“.el-table__fixed .el-table__fixed-body–wrapper“);
let fixedRight = document.querySelector(“.el-table__fixed-right .el-table__fixed-body–wrapper“);
if (fixedLeft) fixedLeft.style.top = fixedTop + “px“
if (fixedRight) fixedLeft.style.top = fixedTop + “px“
}
}
})
原文地址:https://blog.csdn.net/m0_64210617/article/details/129772066
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_45504.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!