2011-12-04 53 views
2

我知道這兩個都會將html插入到元素中。jQuery附加字符串與包含字符串的對象

雖然這兩種方法有什麼區別?

字符串:

$("div").append("<h1>Header</h1>"); 

對象:

$("div").append($("<h1>Header</h1>")); 

難道僅僅是你可以做這樣的東西?

$("div").append($("<h1></h1>").html("Header")); 
+0

http://api.jquery.com/append/ – SLaks

回答

4

難道僅僅是你可以做這樣的東西?

$("div").append($("<h1></h1>").html("Header")); 

究竟

這樣做,這樣會爲你這還可以與像追加,CSS功能,操縱一個jQuery對象,addClass

$("div").append($("<h1></h1>").html("Header") 
           .addClass("someClass") 
           .css("color", "gree")); 

或者,如果你不我們不想做這樣的進一步操作,然後通過一切方式傳遞它只是一個字符串,你會得到相同的結果。

0

在你的例子中沒有實際的區別。該函數接受字符串,因爲您可能想要添加一個尚未具有jQuery對象的新元素,並且它接受jQuery對象,因爲您可能想追加現有元素或沒有字符串表示形式的複雜對象。