固定列(固定行)対応版のバグ
SlickGridは複数のforkが存在しており、例えば以下は固定列(固定行)対応のものだったりする。
https://github.com/JLynch7/SlickGrid/tree/gh-pages
ただし、列固定を行った場合、ある条件下(例えば、非固定列が非常に長く、そこで列幅変更をした場合など)で固定部の値が消えるというバグがある。
slick.grid.js を修正することで対応できる(見た感じケアレスミス)。
// appendCellHtml(stringArrayL, row, i, colspan); //Remove this line
appendCellHtml(stringArrayL, row, i, colspan, d); //Add this line
参考
https://github.com/mleibman/SlickGrid/issues/1002
http://stackoverflow.com/questions/31536065/slickgrid-freeze-column-issue-on-vertical-scrolling
マウスホバーによるハイライト処理
拾ってきたスクリプトを直したもの。
// var slickgrid = new Slick.Grid(...);
// hover時のcss切り替え(bg-yellow)
slickgrid.onMouseEnter.subscribe(function(e,args) {
var cell = self.slickgrid.getCellFromEvent(e),
param = {},columnCss = {};
for(var index in columns){
var id = columns[index].id;
columnCss[id] = 'bg-yellow';
}
param[cell.row] = columnCss;
// キー row_hoverと紐付けてcss設定
slickgrid.setCellCssStyles("row_hover", param);
e.preventDefault();
});
slickgrid.onMouseLeave.subscribe(function (e) {
// キー row_hoverと紐付けられたcssを削除
slickgrid.removeC ellCssStyles("row_hover");
e.preventDefault();
})