私のページの1つにこの構造があります:
head
script
/script
/head
body
table1
table2
/body
ここにJavaScriptがあります:
<script type="text/javascript">
$( function() {
$('tr').click( function() {
$(this).parents('table').find('tr').each( function( index, element ) {
$(element).removeClass('selected');
} );
$(this).addClass('selected');
$(this).removeClass('normal');
} );
} );
$( function() {
$('tr').hover( function() {
$(this).addClass('highlight');
$(this).removeClass('normal');
} );
} );
$( function() {
if($('tr').hasClass('selected')) {
}
else {
$('tr').mouseout( function() {
$(this).removeClass('highlight');
} );
}
} );
</script>
table1 はページをロードすることによって生成され、table2 は Ajax を使用して table1 の任意の行をクリックすることによって生成されます。
クリックまたはホバーすると、スクリプトはいくつかのクラスを tr (テーブルの行) に追加するので、スタイルを設定できます (背景色を変更します)。
スクリプトは table1 行に適用され、クラスを追加しますが、table2 行には適用されません!
任意の助けをいただければ幸いです。