いくつかのテーブル セル データを反復処理するとき、見つかったものの配列を作成します。最初の反復では、見つかったテキストをいくつかのタグでラップするだけですが<span>
、後続の反復では、以下のように他のスタイルを追加します。
var array = $('table').find('th').map(function(i){
if (i===0){
// This bit's OK
return '<span>' + $(this).text() + '</span>';
} else {
// This just looks horrible
return '<span style="width:' + $(this).outerWidth() + 'px; display:inline-block; position:absolute; right:' + w[i-1] + 'px">' + $(this).text() + '</span>';
}
}).get();
それはすべて正常に動作しますが、それは恐ろしいことです。スタイルを使用して HTML 要素を構築するはるかにエレガントな方法を以前どこかで見たことがあると思います。
else
より「メンテナンスしやすい」ステートメントの書き方を提案できる人はいますか?
EDIT : コードは他の計算に基づいて値を適用するため、CSS クラスを使用することは実際には解決策ではありません。