slickgrid 调整大小导致靠近底部的滚动条间隙

标签 slickgrid jquery-layout

我有以下问题:
我将 Slickgrid 与 jquery 布局结合使用。可以使用此插件调整 Pane 的大小。当我调整 Slickgrid Pane 的大小时,会出现一个水平滚动条(起初并不存在),我无法一直滚动到底部。

我创建了一个 jsfiddle 来演示:
http://jsfiddle.net/uNMRT/2/

重现步骤:

  • 确保 slickgrid Pane 没有水平滚动条。
  • 一直滚动完成。 (效果很好,您可以查看记录 119,最后一条)
  • 使用垂直拆分器调整 slickgrid Pane 的大小。确保使 slickgrid 区域变小以显示水平滚动条。
  • 再次向下滚动。请注意,您无法完全向下滚动。现在看不到记录 119。

  • 我已经在调整大小时做了一个 resizeCanvas:
    center__onresize: function(pane, $pane, state, options) {
                    myGrid.resizeCanvas();
                }
    

    这显然还不够。有任何想法吗?

    最佳答案

    我遇到了同样的问题,看起来光滑的网格没有正确设置“viewportHasHScroll”标志。我找到了以下两种解决方法来解决这个问题(SlickGrid v2.1)

    1) 更新 updateCanvasWidth 函数(第 396 行)并更改以下行

    viewportHasHScroll = (canvasWidth > viewportW - scrollbarDimensions.width); 
    

    到(注意“大于或等于”符号
    viewportHasHScroll = (canvasWidth >= viewportW - scrollbarDimensions.width);
    

    2) 更新 handleScroll 函数(第 1920 行)并更新 if 块
      //only scroll if they've moved at least one row
      if(vScrollDist && (vScrollDist > options.rowHeight)) {
          ....
      }
    

    关于slickgrid 调整大小导致靠近底部的滚动条间隙,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13178547/

    相关文章:

    jquery - 调整大小后获取 Pane 的大小

    javascript - 可以在不从 "columns"数组中删除 SlickGrid 列的情况下隐藏它吗?

    javascript - 如何在多个 SlickGrid 上使用通用格式化程序?

    javascript - 使用 ajax 的光滑网格示例

    jquery - 让 jqGrid 填充其容器

    javascript - 如何在slickgrid中动态添加列?

    javascript - 启用后如何禁用 slickgrid 列重新排序?

    CSS - jQuery Layout & Bootstrap 3 - Z-Index 问题?

    javascript - $ ('body' ).layout 不是函数