LoginSignup
1
2

More than 5 years have passed since last update.

SlickGridメモ

Last updated at Posted at 2016-05-26

固定列(固定行)対応版のバグ

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();
})
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2