带有固定列的jQuery数据表垂直滚动错误

Posted

技术标签:

【中文标题】带有固定列的jQuery数据表垂直滚动错误【英文标题】:jQuery datatables vertical scroll bug with fixed column 【发布时间】:2015-11-25 14:23:11 【问题描述】:

好的,我已经注意到 FireFox 和 IE 11 的这个错误,如何复制它:

在固定列上开始滚动 在滚动时将鼠标移到其他数据上 结果:行未对齐

Live demo

$.fn.dataTableExt.sErrMode = 'ignore';
$('#myTable01').DataTable( 
    scrollY:        "200px",
    scrollX:        true,
    scrollCollapse: true,
    paging:         false,
    fixedColumns:   true,
    bPaginate: false,
    bFilter: false,
    bInfo: false,
    bSort: false,

 );

有没有办法在 FireFox 和 IE 中解决这个问题?我已经尝试过 chrome,它在那里运行良好。

【问题讨论】:

您找到解决方案了吗? 从来没有能够修复它,只是忽略了它 【参考方案1】:

文件:dataTables.fixedColumns.js

删除行:iBodyweight -= oOverflow.bar;

【讨论】:

【参考方案2】:

抱歉,回复晚了。 我也面临类似的问题。鉴于下面的修复。如果有任何挑战,请尝试并告诉我。

文件:dataTables.fixedColumns.js 版本:3.2.4

在“scroll.DTFC”事件中更新以下条件

现有代码:`

 if (mouseController === 'main') 
        if (that.s.iLeftColumns > 0) 
      that.dom.grid.left.liner.scrollTop = that.dom.scroller.scrollTop;
 
  if (that.s.iRightColumns > 0) 
                                                                that.dom.grid.right.liner.scrollTop = that.dom.scroller.scrollTop;
 `

Updated Code : ` if (mouseController === 'main'|| mouseController === 'left') 
if (that.s.iLeftColumns > 0) 
                                                                that.dom.grid.left.liner.scrollTop = that.dom.scroller.scrollTop;
  
 if (that.s.iRightColumns > 0) 
                        that.dom.grid.right.liner.scrollTop = that.dom.scroller.scrollTop;
                                                            
 

`

【讨论】:

以上是关于带有固定列的jQuery数据表垂直滚动错误的主要内容,如果未能解决你的问题,请参考以下文章

如何将垂直滚动条添加到始终固定第一列的表中

使用元素ui删除具有固定列的表中的垂直线[关闭]

固定水平位置,但允许使用 jQuery 进行垂直滚动

带有滚动正文的引导固定表头

带有固定标题垂直滚动条的表格是IE11中的Flickr

jQuery-ui 可拖动滚动仅垂直