我有一個簡單的UL與所有LI的class =「event」。appendTo不按預期工作
下面的jQuery沒有按預期工作。
$('#calendar-feed li.event').each(function() {
$(this).find('h3').appendTo('h4');
});
我想在每一個LI中採用唯一的h3並將它追加到該LI中唯一的h4。
目前它將所有H3和克隆到每個H4。
我的語法錯了嗎?或者我在想這個錯誤的方法?
我有一個簡單的UL與所有LI的class =「event」。appendTo不按預期工作
下面的jQuery沒有按預期工作。
$('#calendar-feed li.event').each(function() {
$(this).find('h3').appendTo('h4');
});
我想在每一個LI中採用唯一的h3並將它追加到該LI中唯一的h4。
目前它將所有H3和克隆到每個H4。
我的語法錯了嗎?或者我在想這個錯誤的方法?
這樣做,因爲appendTo
是一個新的選擇器,它可以包含頁面內的任何內容。所以你選擇了頁面中的所有H4並將它們添加到LI h3。
$('#calendar-feed li.event').each(function() {
$(this).find('h3').appendTo($(this).find('h4'));
});
我認爲你需要得到正確的h4
內循環,這樣的事情:
$('#calendar-feed li.event').each(function() {
var h4 = $(this).find('h4');
$(this).find('h3').appendTo(h4);
});
我沒有嘗試這個特定的解決方案,但我想它也可以工作,現在看到我做錯了什麼。 – Sean 2013-04-29 00:04:17
這是沒有意義的附加<h3>
INTO<h4>
。
我猜你想要的是把<h3>
後<h4>
,交換它們的位置(儘管它仍然意義不大,如果你使用這些標籤,但無論如何)
$('#calendar-feed li.event h3').each(function (i, h3) {
var $h3 = $(h3);
$h3.after($h3.closest('li').find('h4'));
});
或者如果您希望<h3>
保證爲每個<li>
中的最後元素,則請執行此操作
$('#calendar-feed li.event h3').each(function (i, h3) {
var $h3 = $(h3);
$h3.appendTo($h3.closest('li'));
});
我確實希望h3內部的h4。主要是因爲我需要如何設計它,而且我不能重寫CMS如何寫出標記。 – Sean 2013-04-28 23:55:32
這個工作。我有一個jQuery的體面的工作知識,但我沒有一個程序員的頭腦......無論出於什麼原因,我在想,因爲它是在一個.each函數中,它只會在特定的LI中查找。 感謝您的幫助。 – Sean 2013-04-29 00:03:22