trObject.sectionRowIndexは、表(table要素)のブロック(セクション)ごとの行(tr要素)のインデックス番号を取得するプロパティ。
このプロパティが返すインデックス番号は、tableObject.rowsコレクションにおけるインデックス番号のこと。
表(table要素)におおけるブロック(セクション)とは、tbody要素や、thead要素、tfoot要素で括った部分のこと。
取得
$trElementReference.sectionRowIndex;
戻り値
- ブロック(セクション)ごとの行(tr要素)のインデックス番号。
- tableObject.rowsコレクションにおけるインデックス番号。
- 「0」から始まる点に注意。
例
$tableElementReference.rows[0].sectionRowIndex; // 表の1行目の行のブロック別インデックス番号「0」
$tableElementReference.rows[2].sectionRowIndex; // 表の3行目の行のブロック別インデックス番号「2」
$tableElementReference.rows[2].sectionRowIndex; // 表の3行目の行のブロック別インデックス番号「2」
サンプル
カーソルを合わせた行(tr要素)のブロック別インデックス:
ヘッダ1-1 | ヘッダ1-2 | ヘッダ1-3 |
---|---|---|
ヘッダ2-1 | ヘッダ2-2 | ヘッダ2-3 |
1行目1列目 | 1行目2列目 | 1行目3列目 |
2行目1列目 | 2行目2列目 | 2行目3列目 |
3行目1列目 | 3行目2列目 | 3行目3列目 |
フッタ1-1 | フッタ1-2 | フッタ1-3 |
フッタ2-1 | フッタ2-2 | フッタ2-3 |
サンプルの動作について
表のセルにカーソルを合わせると、そのセルの背景色を黄色にする。「カーソルを合わせた行(tr要素)のインデックス:」の右横に、カーソルを合わせた行(tr要素)のブロックごとのインデックス番号を表示する。
サンプルのソースコード
JavaScript
<script type="text/javascript">
window.onload = function(){
var $sampleRows = document.getElementById( "sample" ).rows;
for ( var $sectionRowIndex = 0; $sectionRowIndex < $sampleRows.length; $sectionRowIndex++ ) {
$sampleRows[$sectionRowIndex].onmouseover = function(){
this.style.backgroundColor = "yellow";
document.getElementById( "sampleOutput" ).innerHTML = this.sectionRowIndex;
};
$sampleRows[$sectionRowIndex].onmouseout = function(){
this.style.backgroundColor = "";
};
}
}
</script>
window.onload = function(){
var $sampleRows = document.getElementById( "sample" ).rows;
for ( var $sectionRowIndex = 0; $sectionRowIndex < $sampleRows.length; $sectionRowIndex++ ) {
$sampleRows[$sectionRowIndex].onmouseover = function(){
this.style.backgroundColor = "yellow";
document.getElementById( "sampleOutput" ).innerHTML = this.sectionRowIndex;
};
$sampleRows[$sectionRowIndex].onmouseout = function(){
this.style.backgroundColor = "";
};
}
}
</script>
HTML
<p>
カーソルを合わせた行(tr要素)のブロック別インデックス:<span id="sampleOutput"></span>
</p>
<table id="sample">
<thead>
<tr>
<th>ヘッダ1-1</th>
<th>ヘッダ1-2</th>
<th>ヘッダ1-3</th>
</tr>
<tr>
<th>ヘッダ2-1</th>
<th>ヘッダ2-2</th>
<th>ヘッダ2-3</th>
</tr>
</thead>
<tbody>
<tr>
<td>1行目1列目</td>
<td>1行目2列目</td>
<td>1行目3列目</td>
</tr>
<tr>
<td>2行目1列目</td>
<td>2行目2列目</td>
<td>2行目3列目</td>
</tr>
<tr>
<td>3行目1列目</td>
<td>3行目2列目</td>
<td>3行目3列目</td>
</tr>
</tbody>
<tfoot>
<tr>
<th>フッタ1-1</th>
<th>フッタ1-2</th>
<th>フッタ1-3</th>
</tr>
<tr>
<th>フッタ2-1</th>
<th>フッタ2-2</th>
<th>フッタ2-3</th>
</tr>
</tfoot>
</table>
カーソルを合わせた行(tr要素)のブロック別インデックス:<span id="sampleOutput"></span>
</p>
<table id="sample">
<thead>
<tr>
<th>ヘッダ1-1</th>
<th>ヘッダ1-2</th>
<th>ヘッダ1-3</th>
</tr>
<tr>
<th>ヘッダ2-1</th>
<th>ヘッダ2-2</th>
<th>ヘッダ2-3</th>
</tr>
</thead>
<tbody>
<tr>
<td>1行目1列目</td>
<td>1行目2列目</td>
<td>1行目3列目</td>
</tr>
<tr>
<td>2行目1列目</td>
<td>2行目2列目</td>
<td>2行目3列目</td>
</tr>
<tr>
<td>3行目1列目</td>
<td>3行目2列目</td>
<td>3行目3列目</td>
</tr>
</tbody>
<tfoot>
<tr>
<th>フッタ1-1</th>
<th>フッタ1-2</th>
<th>フッタ1-3</th>
</tr>
<tr>
<th>フッタ2-1</th>
<th>フッタ2-2</th>
<th>フッタ2-3</th>
</tr>
</tfoot>
</table>
CSS
<style>
#sample {
background-color: white;
cursor: pointer;
}
#sample tr,
#sample th,
#sample td {
background-color: inherit;
font-size: inherit !important;
color: inherit !important;
}
#sample thead,
#sample tfoot {
background-color: lightblue;
}
</style>
#sample {
background-color: white;
cursor: pointer;
}
#sample tr,
#sample th,
#sample td {
background-color: inherit;
font-size: inherit !important;
color: inherit !important;
}
#sample thead,
#sample tfoot {
background-color: lightblue;
}
</style>