在制表符中滚动不适用于长内容

问题描述 投票:0回答:2

我注意到,当单元格中有大量文本时,表格不会垂直滚动。当我向下滚动时,表格跳回顶部。该行为是内容量和列宽度的函数。在出现此行为之前,较宽的列可以处理更多内容。

我认为这是由于我自己的自定义格式化程序造成的,但它也发生在 textarea 和 html 格式化程序中。

tabulator
2个回答
1
投票

如果行内容明显长于表格的高度,就会发生这种情况。

在这种情况下,您可以通过增加表格上虚拟 dom 渲染缓冲区的大小来提高滚动稳定性。这是表格在表格上方和下方呈现的空间量,以允许平滑滚动。

默认设置为桌子高度的 2 倍。您应该确保它至少是最高行高度的 5 倍。

这可以使用表构造函数中的

virtualDomBuffer
选项来完成:

var table = new Tabulator("#example-table", {
    virtualDomBuffer:300, //set virtual DOM buffer to 300px
});

有关这方面的更多信息可以在虚拟 DOM 文档

中找到

虽然从用户体验的角度来看,如果表格占用了很大的垂直空间,我会质疑表格是否是布局数据的最佳方式。在行中显示摘要信息可能会更清晰,然后使用

rowFormatter
切换行下的详细信息部分,或使用模式来显示更多详细信息


0
投票

另一个对我有帮助的选择是禁用虚拟 DOM,但你必须考虑缺点。你可以这样做:

var table = new Tabulator("#example-table", { virtualDom:false, //禁用虚拟 DOM 渲染 });

检查文档:https://tabulator.info/docs/4.9/layout#virtual-dom

© www.soinside.com 2019 - 2024. All rights reserved.