SlickGrid更改鼠标悬停时的行背景颜色

| 我正在使用SlickGrid的2.0a版本进行分组。一切都很好(有很多自定义)。我正在尝试将翻转事件中的整行更改为ѭ0。 我已经试过了:
.slick-row { background-color:#dee0fe; } 
还有这个:
.slick-row.ui-state-active { background:#dee0fe; }
这适用于单个单元格:
.lr:hover { background: #dee0fe; }
但是似乎没有任何内容适用于整个行,而且我从未见过这样的示例。 我也将单元格设置为
selectable:true, focusable:false
。 似乎应该很容易... 谢谢     
已邀请:
这对我来说很好:
.slick-row:hover { background-color: red; }
    
只是基于您问题中的CSS的一个猜测:
 .slick-row:hover .lr {
     background-color:#dee0fe;
 }
    
我自己也可以这样做,这是我提出的简化版本。您可以对此进行很多整理,并假设您的列不变,那么缓存哈希的内部是有意义的。 使用API​​调用应该看起来像这样:
grid.onMouseEnter.subscribe(function (e) {
    var hash = {};
    var cols = grid.getColumns();

    for (var i = 0; i < cols.length; ++i) {
        hash[grid.getCellFromEvent(e).row][cols[i].id] = \"hover\";
    }

    grid.setCellCssStyles(\"hover\", hash);
});

grid.onMouseLeave.subscribe(function (e) {
    grid.removeCellCssStyles(\"hover\");
});
    
您需要做的就是获取行中的单元格集合,并在每个单元格的鼠标输入/离开键上设置其样式:
$(\'.slick-cell\').mouseenter(function () {
     $(this.parentNode.children).addClass(\'slick-cell-hovered\') ;
});

$(\'.slick-cell\').mouseleave(function () {
     $(this.parentNode.children).removeClass(\'slick-cell-hovered\');
});


.slick-cell-hovered 
{
     background: #EBEFF2 none;
}
    

要回复问题请先登录注册