1

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

http://grooveshark.com/#/popular

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

我实施的解决方案如下所示:

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

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

使用 jQuery 操作 SlickGrid 元素,例如 $(".slick-row") 是个好主意吗?还是有更好的方法来做到这一点?

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

4

1 回答 1

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" });
        }
    });

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

于 2012-05-25T18:23:13.887 回答