サイズ固定をelement.width(element.width()) のようにするとパフォーマンスに問題がでる
テーブル分割方式で、table要素のヘッダを固定するケースなんかでは、分割前にtdやthの幅をこんな感じで固定化する。
$('table > tbody > tr:eq(0) > *').each(function(){ $(this).width($(this).width()); });
この書き方だと、カラム数が少ない場合は問題ないけど、少し増えるとえらくパフォーマンスが落ちる。
無駄にループすることになるが、一旦サイズをキャッシュしてからあらためてサイズ設定すると問題なくなる。(IE8でテスト)
var w = []; $('table > tbody > tr:eq(0) > *'). each(function(){ w.push($(this).width()); }). each(function(idx){ $(this).width(w[idx]); });
という訳で、Ex Table も30カラム程度のtableに適用したら実用に耐えられなかったので書き直した(githubにはまだアップしてない)