2011-10-04 43 views
1
<table id="tab"> 
    <tr aaa="one" bbb="ooo"><td>xxx</td><</tr> 
    <tr aaa="two" bbb="one"><td>xxx</td><</tr>  
    <tr aaa="three" bbb="one"><td>xxx</td><</tr>  
    <tr aaa="four" bbb="three"><td>xxx</td><</tr>  
</table> 

我想:的jquery + CSS - 與參數懸停

如果我懸停TR與參數AAA = 「一個」然後背景色與參數BBB = 「一個」所有TR將是紅色的。

我想使用jquery。

活生生的例子:http://jsfiddle.net/syCMN/1/

感謝您的幫助!

回答

2
$('tr').hover(function(){ 
    $('tr[bbb="'+$(this).attr('aaa')+'"]').addClass('red'); 
},function(){ 
    $('tr').removeClass('red'); 
}) 

http://jsfiddle.net/syCMN/2/

1
<head> 
<script type="text\javascript"> 
    $("#tab tr").hover(function(event){ 
    var param = $(this).attr("aaa"); 
    $("[bbb='"+param+"']").toggleClass("red"); 
    },function(event){ 
    var param = $(this).attr("aaa"); 
    $("[bbb='"+param+"']").toggleClass("red"); 
    }); 
</script> 
</head> 
1

這應做到:

$(function(){ 
    $('tr[aaa=one]').mouseenter(function(e){ 
     $('tr[bbb=one]').css('background-color', 'red'); 
    }); 
}); 
1

一般情況下,這是一個壞主意。由於您的自定義屬性,您的代碼無法通過任何類型的HTML驗證。用兩個類來描述每個<tr>是不是更有意義?

1
$('#tab tr[aaa="one"]').hover(
    function(){ 
     $('#tab tr[bbb="one"]')   
      .css('background-color', 'red'); 
    }, 
    function(){ 
     $('#tab tr[bbb="one"]')   
      .css('background-color', 'white'); 
    } 
);