我有一個包含歌詞的表格。平均來說,歌曲有30行左右,但我不希望它們都一次顯示在頁面上,所以我把表格放在屬性溢出的div中:滾動。每次滾動一個div(包含一個表格)一行一行
我想做兩件事:一次在div中顯示4行或5行(表格行),並且隨着歌曲前進,div向下滾動,因此當前播放行位於div的頂部。
我猜測代碼將使用屬性scrollTop和offsetHeight,但我不知道如何把它放在一起。
這裏的表:jsFiddle
<div id="divlyrics" class="lyrics">
<table>
<tr id="row_0">
<td>
<p id="lyric_0" class="lyric_line">
Song lyrics line 1<br>
</p>
</td>
</tr>
<tr id="row_1">
<td>
<p id="lyric_1" class="lyric_line">
Song lyrics line 2<br>
</p>
</td>
</tr>
<tr id="row_2">
<td>
<p id="lyric_2" class="lyric_line">
Song lyrics line 3<br>
</p>
</td>
</tr>
<tr id="row_3">
<td>
<p id="lyric_3" class="lyric_line">
Song lyrics line 4<br>
</p>
</td>
</tr>
<tr id="row_4">
<td>
<p id="lyric_4" class="lyric_line">
Song lyrics line 5<br>
</p>
</td>
</tr>
<tr id="row_5">
<td>
<p id="lyric_5" class="lyric_line">
Song lyrics line 6<br>
</p>
</td>
</tr>
</table>
</div>
CSS:
.lyrics{
font-family:Arial;
overflow:scroll;
}
.lyric_line{
border:solid 1px;
text-align:center;
}
(真正的表將至少有2行:第1行只是顯示 '行x' 和另一行顯示歌詞有三種不同的形式:歌曲的原始語言,音譯和翻譯成另一種語言)。
你將不得不調整一些參數來得到你所需要的,EX:10到一行的高度...... – 2012-07-30 01:44:23
是的這是正確的。看看我的實施http://jsfiddle.net/wrGnu/10/ – ama2 2012-07-30 01:49:11
謝謝。而不是使用10px(Trinh)或1px(ama2)我想我可以得到第一行(row_0)的offsetHeight並通過滾動。 – 2012-07-30 02:17:50