使用SlickGrid滚动行按钮

时间:2011-08-24 10:24:49

标签: jquery slickgrid grooveshark

使用SlickGrid,我想为每一行添加一个删除按钮。但我只想在用户将鼠标悬停在行上时显示按钮。这里可以看到一个很好的例子:

http://grooveshark.com/#/popular

“播放”和“选项”按钮仅在鼠标悬停时可见。

我实施的解决方案如下:

  $(".slick-row").hover(
    function () {
      $(this).find(".deletelink").css({"visibility": "visible"});          
    },
    function () {
      $(this).find(".deletelink").css({ "visibility": "hidden" });
    }
  );

它有效,但这是最简单/推荐的方法吗?我是SlickGrid的新手,当内置方法无法满足我的需求时,我仍然不确定如何与网格交互。

操纵SlickGrid元素是个好主意,例如使用jQuery的$(“。slick-row”)?或者有更好的方法吗?

编辑:我发现我的方法存在一个小问题。当在几个屏幕上上下滚动网格时,切换功能将丢失。大概是因为SlickGrid正在破坏并重新创建表行。我或许可以使用直播活动解决这个问题。再次,这是一个很好的解决方案还是有更好的方法来解决这类问题?

1 个答案:

答案 0 :(得分:2)

改为使用

$('.slick-row').live('mouseover mouseout', function (event) {
        if (event.type == 'mouseover') {
            $(this).find(".deletelink").css({"visibility": "visible"}); 
        } else {

             $(this).find(".deletelink").css({ "visibility": "hidden" });
        }
    });

在这里工作得很好,即使在向上和向下滚动网格几次之后