ループあり:
var $col = $("#colgroup-compare > col");
for(var i = 0; i < n; i++){
$col.clone().appendTo('#colgroup-compare');
}
ループで使用することはできません。これはjQuery("#colgroup-compare > col").clone().appendTo('#colgroup-compare');
、0を超える反復でより多くの列が追加されるためです。
これは最適化できます:
var $colgroup = $('#colgroup-compare'); // this saves the colgroup collection to avoid recomputing it later
var $col = $colgroup.children("col"); // this makes the clonable col(s) from the col children of $colgroup
for (var i=n; i-->0;){ // n times (from n-1 to 0)
$colgroup.append($col.clone()); // append a clone of the col(s)
}
編集:th
あなたの最初の行でを数えるために、あなたはこれをするかもしれません:
var n=$("tr").first().children('th').length;
(これにより、複数の行を頼りにすることは避けられます)
デモンストレーション