使用jQuery

时间:2015-05-26 11:03:16

标签: jquery

我有一个简单的表格,当用户将鼠标悬停在行元素上时,我会使用jQuery更改行颜色。

$('tr').on('mouseenter', function(){
    $(this).css({background:'#f00'});
});
$('tr').on('mouseout', function(){
    $(this).css({background:''});
});

当用户将鼠标从A列移动到B列(在同一行)时,会触发mouseout事件。

jsFiddle here

测试案例:将鼠标移动到单元格上,然后使用' Foo'在里面。将鼠标移动到右侧,使用' Bar'在里面。该行应保持红色,但不是。

在IE11和Chrome 42.0.2311.152m中测试过。由于我实际使用的选择器,CSS并不合适。 (附上minimal complete verifiable example)。

4 个答案:

答案 0 :(得分:3)

您可以使用CSS来处理样式:

tr:hover {
    background-color:#f00;
}

jsFiddle here

答案 1 :(得分:2)

最好使用 hover

$('tr').hover(function () {
    $(this).css({background:'#f00' });
}, function () {
     $(this).css({background:'' });
});

<强> DEMO

答案 2 :(得分:1)

解决方法: 将mouseenter / mouseout个事件应用于td,然后使用$(this).parent().css({background:...});

jsFiddle here

答案 3 :(得分:1)

  

鼠标指针离开任何子节点时会触发mouseout事件   元素以及所选元素。

     

只有鼠标指针离开时才会触发mouseleave事件   选定的元素。

使用⠠⠛⠑⠞⠞⠊⠝⠛ ⠠⠇⠊⠃⠇⠕⠥⠊⠎ ⠞⠕ ⠗⠥⠝ ⠁⠝⠙ ⠞⠗⠁⠝⠎⠇⠁⠞⠑ ⠕⠝ ⠁ ⠠⠗⠁⠎⠏⠃⠑⠗⠗⠽ ⠠⠏⠊事件代替mouseleave

mouseout
相关问题