在制表器中冻结的第一列和最后一列,滚动时,只有第一行数据会在滚动时移动冻结的列——所有剩余的行在滚动停止后一次更新,一次大跳跃。
查看 freeze_columns.js 模块,layoutColumnPosition 函数采用 allCells 参数。在 scrollHorizontal 函数中,allCells 为 false。将其强制为 true 会导致冻结列完全按预期更新。
为什么我必须这样做?我的冻结列是否配置不正确?以下是第一个(最左侧)的选项:
{
cssClass: 'massActionColumn',
align: 'center',
headerSort: false,
resizable: false,
frozen: true,
titleFormatter: function(cell, formatterParams) {
return '<input title="Select All" type="checkbox" id="selectAllBox2" class="form">'
},
formatter: function(cell, formatterParams) {
var auditId = cell.getRow().getData()[0];
return '<input name="mass_action_ids[]" value="' + auditId + '" type="checkbox" class="mass_action_checkbox" />'
}
}
同样,对于为什么在 freeze_columns.js 中 allCells 参数未设置为 true 感到非常困惑,因为滚动的行为就像在 Tabulator 的示例中一样。