我想寫一些jquery,它可以找到div(.content)中的所有h2標籤,然後將每個標籤附加到另一個div(.intro)中。jquery找到h2標籤並追加到div
到目前爲止,我有這樣的:
var h2 = $(".content").find("h2");
$(h2).each(function() {
$(this).append(".intro");
});
但它不工作..如果有人可以幫助我,那簡直太好了:)
我想寫一些jquery,它可以找到div(.content)中的所有h2標籤,然後將每個標籤附加到另一個div(.intro)中。jquery找到h2標籤並追加到div
到目前爲止,我有這樣的:
var h2 = $(".content").find("h2");
$(h2).each(function() {
$(this).append(".intro");
});
但它不工作..如果有人可以幫助我,那簡直太好了:)
試試這個:
var h2 = $('h2', '.content');
$('.intro').append(h2);
無需使用each()
。 jQuery有一個叫做「隱式迭代」的東西,你可以一次處理整個集合。所以你可以抓住它們,並將它們全部附加在一起。
或者您是否想追加它們的副本?
如果是這樣,請嘗試:
var h2 = $('h2', '.content');
$('.intro').append(h2.clone());
編輯:如果您不
$('.intro').append($('h2', '.content').clone());
(當然,去掉.clone()
:
或者使用單行版本不需要複製它們。)
我認爲你正在尋找的appendTo方法。
var h2 = $(".content").find("h2");
$(h2).each(function() {
$(this).clone().appendTo($(".intro"));
});
編輯:只注意到appendTo
被移動h2
標籤,使櫃面對於不需要的,添加了調用clone()
。
能使用兒童(),像...
$('.content').children('h2').each(function() {
$(this).appendTo($('.intro'));
});
,如果你想克隆或剛剛轉會反正是不明確! – 2010-05-10 22:41:07
一個常見的錯誤是在不需要時使用'each()'。當你有一組元素時(比如你的'find()'結果),你可以一次調用集合上的函數,而不需要迭代元素並單獨對每個元素進行操作。 – user113716 2010-05-10 22:47:16