Подтвердить что ты не робот

Как добавить абзац поверх содержимого div

Как добавить несколько тегов абзаца, новый тег сверху в контейнере div.

<div id="pcontainer">
  <p>recently added on top every time on click event recently added paragarph on top</p>
  <p>added before recent</p>
</div>

Я использую append, но каждый раз, когда я нажимаю кнопку, она добавляется к нижней части, мне нужно, чтобы она добавилась поверх всего абзаца, пожалуйста, помогите.

4b9b3361

Ответ 1

Вы можете использовать prepend, чтобы добавить абзац в верхней части контейнера:

// HTML: <div><p>Lorem ipsum</p></div>
$('div').prepend('<p>Bla bla bla');

Обновить. Что касается вашего комментария о том, как вымыться в абзаце - используйте fadeIn:

$("#pcontainer").prepend($('<p>This paragraph was added by jQuery.</p>').fadeIn('slow'));

Рабочая демонстрация: http://jsbin.com/uneso

Ответ 2

Более элегантный способ без jQuery:

var container = document.getElementById('pcontainer');
container.insertBefore(document.createElement("p"), container.firstChild);

Это предполагает, что в контейнере btw уже есть элемент.

Ответ 3

Пример для пользователей без jQuery:

document.getElementById('pcontainer').innerHTML = '<p>new paragraph</p>' + document.getElementById('pcontainer').innerHTML;

возможно, не такой короткий и приятный, хотя:)

Ответ 4

Вот путь без jQuery:

function prependParagraphs()
{
     var choosenDiv = document.getElementById("pcontainer");
     for(var i=0; i<5; i++)
     {
         var newP = document.createElement("p");
         var text = document.createTextNode("new paragraph number: " + i);
         newP.appendChild(text);
         choosenDiv.insertBefore(newP, choosenDiv.firstChild);
     }
}

Ответ 5

Попробуйте использовать prepend вместо добавления.

Ответ 6

Специфично для вашего HTML, это будет:

$("#pcontainer").prepend('<p>here a new paragraph!</p>');