tableのhoverアクションをCSSにてtrに対して当てたく、
それを実現するためにjQueryでrospanの値を取得し、それに該当するtrにclassを付加したいのですが、
以下ソースでは、上手く動作しません。
HTML
1<table> 2 <tr> 3 <td rowspan="3"></td> 4 <td></td> 5 <td></td> 6 <td></td> 7 </tr> 8 <tr> 9 <td></td> 10 <td></td> 11 <td></td> 12 </tr> 13 <tr> 14 <td></td> 15 <td></td> 16 <td></td> 17 </tr> 18</table>
JavaScript
1$("table tr").hover( 2 function(){ 3 var rowCell = $(this).find('td[rowspan]'); 4 var rowValue = rowCell.attr('rowspan'); 5 rowCell.closest('tr').nextAll(':lt(rowValue - 1)').addClass('hover'); 6 }, 7 function(){ 8 $("table tr").removeClass("hover"); 9 } 10);
:lt(rowValue)のrowValueを数値にすると想定した動きになるので、
rowValueの型を数値に変換しないといけないということなのでしょうか?
実現したい動きとしては、
rowspanがあれば、そのtdの親trを含め、rowspanの値分のtrにclassを付けたいです。
上記HTMLであればrowspan=3なので、tr全てにclassを付加したいです。
なお、rowspanの値はバラバラ、rowspanがないtrも存在します。
初歩的な内容かもしれないですが、
どなたかご教示の程よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。