2015-07-10 122 views
3
function showTweet(username) { 
    $("<ul/>", { 
     "class": "my-user-list", 
     html: usertweets[username].join("<li/>") 
    }).appendTo($("#tweets")); 
} 

所以我看到選擇器是針對無序列表,但逗號後面是什麼,爲什麼它在花括號?如何閱讀此功能?

我瞭解.append部分。我不明白"class": "my-user-list"html: usertweets[username].join("<li/>")做什麼。請注意,usertweets是一個數組。

任何有識之士將不勝感激!

+3

文檔中的所有:jQuery的創建元素W /屬性](http://api.jquery.com/jquery/#jQuery-html-attributes) – epascarello

+0

這是jQuery的... HTTP:// API .jquery.com/jQuery /#jQuery1 –

+0

它檢查'usertweets'對象的'username'鍵並將結果值包裹在''li'標籤(放在'ul'中)。 – Andy

回答

4

選擇器不是針對ul - 它正在創建一個。第二個參數是包含要在新元素上設置的屬性的對象。然後通過將它添加到#tweets元素將其添加到DOM。

以示區別:

// to create a ul element in memory 
$('<ul></ul>'); // or... 
$('<ul />'); 

// select all ul elements currently in the DOM 
$('ul');   
2

這不是針對UL,它首先創建一個<ul>元素,並設置<ul>class"my-user-list",然後將其在HTML中它usertweets[username].join("<li/>"),這應該創建一些<li>,最後將其中新創建的<ul><li>添加到$("#tweets")

你可以從jQuery#.jQuery()看到更多。

2

花括號爲PlainObject,它是普通的JavaScript對象。從我會讀

請創建我my-user-list<ul>與usertweets名單的HTML與<li/>加入並追加,爲<ul>和UL用ID tweets

這裏追加到元素的例子

http://jsfiddle.net/xz6a0yqy/