2

我正在使用 slickgrid 建立一个网站,我遇到了这两个问题:

  1. 每当用户单击列标题时,我都想选择整个列。我已经能够改变这个例子中给出的单元格的样式。我无法弄清楚如何更改列标题的样式

  2. 如何知道 slickgrid 中滚动结束的时间。我目前正在做

    $(".slick-viewport").scroll(function () {
        if ($(this)[0].scrollHeight - $(this).scrollTop() <= $(this).outerHeight()) {
            handle_end_of_scroll()
        }
    })
    

但是我依赖于光滑网格体的 css 类名,如果我最终将 slickgrid 更新到更新版本,我可能会遇到问题。如果 slickgrid 的实现发生变化,我可能必须更新这部分代码。

4

1 回答 1

1

更改标题的样式

您可以强制更新标题,这将触发一个onHeaderCellRendered事件,您可以在该事件中更改标题上的类。不过很乱。

grid.onHeaderCellRendered.subscribe(function (e, args) {
    var headerCell = args.node;
});
grid.updateColumnHeader('columnID');

检查是否滚动到结束

直接绑定到滚动事件总是不好的。您应该订阅onViewportChanged事件和getViewport方法以检查您是否已到达终点。

grid.onViewportChanged.subscribe(function () {
    var lastRow = grid.getViewport().bottom;
    if (lastRow >= grid.getDataLength() - 1) {
        console.log('at bottom');
    }
});
于 2013-11-02T04:40:25.887 回答