2012-08-09 75 views
0

我想知道是否有人可以向我解釋jQuery .add()是如何工作的,因爲我正在閱讀jQuery頁面並試圖理解它,並且對我沒有任何意義,不明白它的效用。可以說,我想HTML代碼添加到我的所有div,把這個.add()說明

$('div').append('<p id="new">new paragraph</p>'); 

使得工作,但把

$('div').add('<p id="new">new paragraph</p>'); 

沒有。在jQuery頁面http://api.jquery.com/add/我們可以閱讀;

儘管新段落已經創建並且其背景顏色發生了變化,但它仍然沒有出現在頁面上。要將其放置在頁面上,我們可以將其中一種插入方法添加到鏈中。

我不明白爲什麼然後用add而不是append或其他工作方法。 感謝您的時間和幫助。

編輯

$('div#dest').add('p.foo').append('<p id="new">PeNAROL</p>'); 

讓我明白了,謝謝devundef和JamWaffles

回答

2

add()不修改DOM,它是用來2個匹配查詢組合:

var queryA = $("a") 
var queryB = $("button"); 

var buttonsAndLinks = queryA.add(queryB); 

append()用於附加元素到DOM。

1

這是正確的,在the description

描述:添加元素到匹配的元素。

.append().add()完全不同的事情。

.add()不會向DOM添加元素,它會向前一個選擇器已匹配的元素集添加一個或多個元素。

例如:

$('a.class').add('p.foo'); 

將返回一組含有任何<a class="class"><p class="foo">元素的元素。

+0

很清楚,我希望能夠把你的答案也作爲接受的答案,因爲我得到的兩個解釋都很好,謝謝 – 2012-08-09 10:08:58