Вы можете сделать то, что хотите, немного проще, используя .prependTo()
и $(html)
, например:
$('<li id="newhere"><input type="checkbox" /><span class="listTitle">Im new here</span><ul></ul></li>')
.hide().prependTo('#container').slideDown("slow");
Демонстрацию кода выше можно увидеть здесь
.prepend()
возвращает элемент, к которому вы добавили перед , а не элемент или элементы, к которым он был добавлен. Переключение на .prependTo()
делает его немного чище и должно давать желаемый эффект, так как вы можете продолжить цепочку с добавленных вами элементов. Кроме того, если вы используете одну и ту же строку много раз, теперь она кеширует фрагмент документа и ускоряет его:)
И последнее: если вы делаете это несколько раз, убедитесь, что идентификатор на <li>
уникален, или вы создаете недопустимый HTML, который будет иметь некоторые нежелательные побочные эффекты.