2
return $('<div>', {
class: "my_Class"
});
return $('<div>', {
class: "my_Class"
});
它返回新創建的<div class="my_Class"></div>
元素,這是
$(html, props)
overload of $()
。它需要設置元素HTML和屬性對象。
東西雖然要注意,class
是在IE中的關鍵字,會導致一些問題,你需要把它放在引號:
return $('<div>', { 'class': "my_Class" });
一個更完整的例子可能是這樣的:
return $('<div>', { 'class': "my_Class", click: function() { alert('hi'); } });
來自文檔:
從jQuery 1.4開始,我們可以將屬性映射傳遞給第二個參數。該參數接受可以傳遞給
.attr()
方法的屬性的超集。此外,任何event type可以傳遞的,並且下面的jQuery方法可以被稱爲:val,css,html,text,data,width,height,或offset。請注意,Internet Explorer不允許您創建輸入元素並更改其類型;例如,您必須使用<input type="checkbox" />
來指定類型。
另一個問題:是否等價於:var element = document.createElement('div'); \t \t element.setAttribute(「class」,「my_class」); \t \t return element; ? – 2010-11-07 11:59:33
@UmairP - * almost *,是的,除了問題中的版本返回一個包裝文檔片段的jQuery對象外,評論中的版本將直接返回DOM元素。 – 2010-11-07 12:01:39