1

我必须在鼠标悬停时突出显示 gridview 的一个单元格。突出显示有问题。我正在检查单元格是否会突出显示。

// 来源

  <script type="text/javascript">
    $(document).ready(function() {
    $('#gvrecords tr:td').mouseover(function() {
    $(this).addClass('highlightRow');
    });
    $('#gvrecords tr').mouseout(function() {
    $(this).removeClass('highlightRow');
    })
    })
    </script>

我哪里错了?

4

4 回答 4

1

您选择了错误的选择器, :td 不正确。您需要直接在 tr 上附加事件。您可以使用mouseenter而不是,mouseover因为当鼠标在其上移动时,鼠标悬停会一次又一次地触发,it will cause needless execution of code. 您只需要更改一次班级,因此鼠标输入将为您完成。

现场演示

$(document).ready(function() {
    $('#gvrecords tr').mouseenter(function() {
       $(this).addClass('highlightRow');
    }).mouseout(function() {
      $(this).removeClass('highlightRow');
    })
})
于 2012-12-24T11:28:56.393 回答
1

您可以使用 CSS 执行此操作,这可能会更容易:

#gvrecords tr {
     background-color: #FFF;
}

#gvrecords tr:hover {
     background-color: #000;
}
于 2012-12-24T11:30:12.557 回答
0

使用css

.highlightRow
{
  background-color:your_color;
}
于 2012-12-24T11:29:24.433 回答
0

一个小技巧可以做到这一点。

$('#gvrecords tr:has(td)').mouseover(function() 
于 2012-12-24T11:29:47.303 回答