注意:這是another question的延續,我決定是兩個獨立的問題需要解決。我目前還不確定如何描述這個問題,所以我會盡我所能,當我得到更多的清晰度時,我會重述我的問題以供將來參考。從陣列創建DOM節點
我正在寫兩個基本的jQuery插件,$.fn.query
和$.fn.build
之後,這樣一個數組,並創建HTML代碼分別插入到文檔中。我目前正在使用Vimeo視頻ID對其進行測試,以顯示視頻。
$.fn.build
有三個部分。首先它用每個容器包裝每個陣列項目,將它們構建成行(問題區域),然後最後它將所有內容都包裝在一個容器中。 (每一部分都是可選的)。
具體來說問題出自這一行:$(tmp).add(newRow);
雖然它是有效的JavaScript。
if (options.splitBy !== undefined && options.wrapRow !== undefined) {
var tmp = $([]),
newRow = function(i) {
$(build.splice(i, i + options.splitBy)).wrapAll(options.wrapRow).parent();
};
for (var i = 0, l = build.length, a = options.splitBy; i < l; i += a) {
$(tmp).add(newRow);
}
build = tmp;
console.log(build);
}
有一點注意:使用['add'](http://api.jquery.com/add/)時,您需要使用返回值。 – Yoshi