有了一個循環:
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追加更多的cols ...
這可以進行優化:
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;
(這避免計算上多於一行)
Demonstration
爲什麼不是循環? –