2012-06-12 2 views
4
<table border=2> 
    <tr class="here1 yes"> 
     <td>aaa1</td><td>bbb1</td> 
    </tr> 
    <tr class="here2 yes"> 
     <td>aaa2</td><td>bbb2</td> 
    </tr> 

    <tr class="here55 yes"> 
     <td>aaa3</td><td>bbb3</td> 
    </tr> 
</table> 


<table border=2> 
    <tr class="here1 yes"> 
     <td>ccc1</td><td>ddd1</td> 
    </tr> 
    <tr class="here2 yes"> 
     <td>ccc2</td><td>ddd2</td> 
    </tr> 

    <tr class="here55 yes"> 
     <td>ccc3</td><td>ddd3</td> 
    </tr> 
</table> 


.yes:hover { 
    background-color: red; 
} 

Прямой эфир: http://jsfiddle.net/KzzW8/Наведите указатель мыши на класс в двух таблицах?

В приведенной выше таблице генерируется с помощью следующего PHP:

`<tr class="here<? echo $i ?> yes">` 

Я хотел бы MouseOver на TR.here1, чтобы включить содержимое любого TR.here1 к RED, где подчиненный TD является в группе: (aaa1, bbb1, ccc1, ddd1) независимо от того, в какой таблице он находится.

Я считаю, что для этого могу использовать jQuery. Это возможно?

+0

Можете ли вы объяснить более четко, что вы хотите сделать? – PriestVallon

+0

Я не понимаю вашего вопроса –

+0

Если i mouseover на классе здесь1, то этот класс должен быть фонового цвета: красный во всем классе здесь1 на странице (в моем примере в двух таблицах) –

ответ

5

http://jsfiddle.net/KzzW8/1/

$('tr').hover(function() { 
    var cls = $(this).prop('class').match(/here\d+/); 
    if (cls) { 
     $('.' + cls).addClass('hover'); 
    } 
}, function() { 
    $('.yes.hover').removeClass('hover'); 
});​ 

Так вы на события парения получить here* класс и применять класс .hover для всех строк с одинаковым классом. При наведении указателя - вы удаляете все дополнительные классы

+0

Вероятно, более дружелюбный в реальном DOM-объекте с партиями других узлов, чтобы сделать это, как [это] (http://jsfiddle.net/KzzW8/3/), но по существу все еще одно и то же решение. –

+0

@ Beetroot-Beetroot: действительно, окончательное решение зависит от целей и текущего макета – zerkms

Смежные вопросы