У меня есть пустой div
на моей странице, в который я хочу вставить содержимое в jQuery.
Например:
<div class="container">
</div>
После вставки первой партии контента я хотел бы, чтобы моя разметка выглядела так:
<div class="container">
<div class="inserted first">blah</div>
</div>
Раунд 2 вставки содержимого мне бы хотелось:
<div class="container">
<div class="inserted second">blah</div>
<div class="inserted first">blah</div>
</div>
3-й раунд вставки содержимого мне хотелось бы:
<div class="container">
<div class="inserted third">blah</div>
<div class="inserted second">blah</div>
<div class="inserted first">blah</div>
</div>
Как я могу достичь этого, используя jQuery?
До сих пор я пробовал $(data).appendTo($(".container").before(".inserted"));
но это не работает.
Обновление: Спасибо за все ваши ответы. Практически все ответы до сих пор работают. Я должен был выбрать один, поэтому сначала пошел первым. Еще раз спасибо всем за вашу помощь.
Вы хотите вставить контент до текущего ребенка. Вам нужна функция prepend():
$(".container").prepend(data);
// assuming data is <div class="inserted second">blah</div>
data
- это div с .inserted class
- я использую это в функции успеха AJAX. data
- это то, что отражено моим обработчиком PHP
Используйте .prependTo() вместо .appendTo()
.
Используйте preend вместо append. Предполагая, что данные содержат HTML- <div class="inserted x">blah</div>
Вы можете использовать prepend():
$(".container").prepend(data);
Или prependTo():
$(data).prependTo(".container");
Попробуй это:
$('.container').prepend(DOM object or html string);
Например:
$('.container').prepend('<div class="inserted third">blah</div>');
data
?