1

Tabulator v3.5.3
电子桌面应用程序(OSX 和 PC)

Tabulator 有 300 多个项目,表现出奇怪的行为;最严重的是物品正在消失。其他症状包括滚动“拇指”大小和位置变得不稳定和不一致(例如拇指位置不反映整个列表中的滚动位置)。

我想知道我设置的virtualDomBuffer太高还是太低。该行为在设置为 300 时发生。屏幕上一次只会出现 13-15 个项目。我正在设置 Tabulator 实例的高度:height: "84vh". 这是 Tabulator 可以处理的有效 CSS 值吗?

我试过设置virtualDomBuffer为 1000 但也许这是处理这个问题的错误方法?

(我知道有一个较新版本的 Tabulator,但我需要支持现有的应用程序并且不想引入大的改变,除非我必须这样做。

在此处输入图像描述- - - - 在此处输入图像描述


制表符实例初始化

  eventList = $("#event-list");
        eventList.tabulator({
            height: "84vh",
            virtualDomBuffer: 300,
            layout: "fitColumns",
            resizableColumns: false,
            selectable: 1,
            responsiveLayout: "hide",
            placeholder: "No Events",
            columns: [
                {
                    title: "Events",
                    field: "startDate",
                    formatter: eventListRowFormatter,
                    variableHeight: true,
                    headerSort: false
                },
                { formatter: deleteIcon, width: 5, align: "center", cellClick: deleteFromEventList }
            ],
            rowClick: function (e, row) {
                // prevent deselecting clicked row
                var selectedRows = eventList.tabulator("getSelectedRows");
                if (selectedRows.length == 0) {
                    eventList.tabulator("selectRow", row);
                } else if (isEventDirty == false) {
                    lastEventSelected = row;
                    setActiveEvent(row.row.data)
                } else {
                    eventList.tabulator("deselectRow");
                    eventList.tabulator("selectRow", lastEventSelected);
                }
            },
            rowDeselected: function (row) {
                if (isEventDirty == true) {
                    lastEventSelected = row;
                }
            },
            ajaxLoader: false
        });

列格式化程序

function eventListRowFormatter(cell) {
    var data = cell.cell.row.data

    if (data.eventTitle == "") {
        return " - " + "<br>" + "<small>" + data.startDate + "</small>"
    } else {

        return data.eventTitle + "<br>" + "<small>" + data.startDate + "</small>"
    }
}
4

1 回答 1

0

3.5 版本出现了一些渲染问题,我建议更新到 4.1 版本

于 2018-11-22T21:47:50.780 回答