Я хотел бы добавить a <li>
в определенном положении, например:
<ul id="list">
<li>Position 1</li>
<li>Position 2</li>
<li>Position 4</li>
<ul>
Скажем, то, что я хочу добавить новое <li>
ниже/после того, как <li>Position 2</li>
, как я могу сделать это с помощью jQuery?
Я попытался сделать это с помощью кода ниже:
$('#list li:eq(1)').append('<li>Position 3</li>');
Но, это не работало, потому что это добавляет <li>
в <li>Position 2</li>
, вместо этого добавьте <li>
ниже/после того, как <li>Position 2</li>
.
Кто-то может дать мне некоторую справку?
Спасибо.
Вы должны использовать после ()
вместо append ()
:
Описание: Вставлять содержимое, указанное параметром, после каждого элемента в наборе согласованных элементов.
$('#list li:eq(1)').after('<li>Position 3</li>');
В документации к append ()
ясно сказано:
Вставить содержимое (...) в конец каждого элемента.
Для полноты:
Обратите внимание, что : eq (n)
соответствует n
-ому элементу соответствующего набора элементов, тогда как : nth-child (n)
соответствует n
-ому дочернему элементу родителя.
Вы должны использовать after ()
или insertAfter ()
http://api.jquery.com/category/manipulation/dom-insertion-outside/