我有一個頁面,裏面有一個空的DIV,我想變成一個手風琴。我從文檔中瞭解到節標題需要是H3標記,而子元素需要是P或DIV。也許我沒有把握好。我有這個代碼在頁面加載時運行。手風琴已成功創建,但它沒有單個部分,而是具有n個子項目,似乎是爲每個其他子項目創建一個標題。 elements
變量是從ajax調用返回的映射(字典),其中包含需要在手風琴中顯示的元素的標題和URL。把孩子插入到一個DIV中用於jQuery UI accordion
var markup = "";
markup += "<h3><a href='#'>Controls</a></h3>";
$.each(elements, function (title, url) {
markup += "<div><a href='" + url + "'>" + title + "</a></div>";
});
$("#accordion").append(markup);
$("#accordion").accordion();
所以基本上我期待在年底這個標記結構:
<h3><a href='#'>Controls</a></h3>
<div><a href='xxx'>Foo</a></div>
<div><a href='yyy'>Bar</a></div>
... etc
我不知道我在做什麼錯在這裏。我在一臺corp筆記本電腦上無法安裝firefox或chrome,因此我無法查看動態DOM以查看結構是否正確創建或內容。
不,現在嘗試'add()',手風琴甚至沒有創建。我猜'add()'不是爲了向現有的DOM元素添加子元素嗎? – sakuntala 2011-06-09 18:55:15
add()添加同級,append()添加子級。如果你問我,這有點違反直覺。 – m2o 2011-06-09 18:57:33
實際上,add()將一個元素添加到內存中匹配元素的集合中,並且不會更改DOM。 Append()通過添加子元素來更改DOM結構。 – skajfes 2011-06-10 22:28:32