- ベストアンサー
【html】tableでの奇数行と偶数行の色分けについて
- tableの奇数行と偶数行の色分け方法として、jQueryを使用してtr要素を取得し、evenクラスを追加する方法が一般的です。
- しかし、この方法ではrowspanを利用したときにずれが生じる可能性があります。
- ずれを防ぐためには、CSSを使用してnth-childセレクタを適用し、奇数行と偶数行に異なるスタイルを指定する方法が有効です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
作るとこんな感じでしょうか? 最後のif文で奇数偶数の判断ができますので、どちらでも対応できます。 $(document).ready(function(){ $("table").each(function(){ var finds =[]; var lineno = 0; var rows = 1; var index = jQuery(this).find('tr > :first-child'); for(var i=0;i<index.length;i+=1){ if(!finds[i]){ rows = index[i].rowSpan; if (rows > 1) { for (var row = i; row < (i+rows); row += 1) { finds.push({i:row,type:lineno % 2}); } }else{ finds.push({i:i,type:lineno % 2}); } lineno+= 1; } } jQuery(this).find("tr").each(function(i,e){ if(finds[i].type===0){ //0:偶数,1:奇数 $(e).addClass("even"); } }); }); });
その他の回答 (1)
- x_lady007
- ベストアンサー率75% (37/49)
こちらを利用するのが手っ取り早いかと思います。 http://www.yomotsu.net/lab/javascripts/stripedtable