Как добавить в существующую ?

У меня есть код, который выглядит так:

 

Я хотел бы использовать jQuery, чтобы добавить в список следующее:

 
  • Message Center
  • Я попробовал это:

     $("#content ul li:last").append("
  • Message Center
  • ");

    Но это добавляет новый li внутри последнего li (непосредственно перед закрывающим тегом), а не после него. Каков наилучший способ добавить этот li ?

    Это сделало бы это:

     $("#header ul").append('
  • Message Center
  • ');

    Две вещи:

    • Вы можете просто добавить
    • в

        .

      • Вам нужно использовать противоположные типы котировок, чем то, что вы используете в своем HTML. Поэтому, поскольку вы используете двойные кавычки в своих атрибутах, окружите код одинарными кавычками.

      Вы можете сделать это также более «объектным способом» и по-прежнему легко читать:

       $('#content ul').append( $('
    • ').append( $('').attr('href','https://stackoverflow.com/user/messages').append( $('').attr('class', 'tab').append("Message center") )));
    • Тогда вам не нужно сражаться с котировками, но нужно следить за фигурными скобками 🙂

      Как насчет использования «после» вместо «добавить».

       $("#content ul li:last").after('
    • Message Center
    • ');

      “.after ()” может вставлять содержимое, заданное параметром, после каждого элемента в наборе согласованных элементов.

      Если вы просто добавляете текст в этот li , вы можете использовать:

        $("#ul").append($("
    • ").text("Some Text."));
    • jQuery поставляется со следующими параметрами, которые могут удовлетворить ваши потребности в этом случае:

      append используется для добавления элемента в конец родительского div указанного в селекторе:

       $('ul.tabs').append('
    • An element
    • ');

      prepend используется для добавления элемента в начало / начало родительского div указанного в селекторе:

       $('ul.tabs').prepend('
    • An element
    • ');

      insertAfter позволяет вставить элемент вашего выбора после элемента, который вы указали. Созданный вами элемент будет помещен в DOM после указанного тега закрытия селектора:

       $('
    • An element
    • ').insertAfter('ul.tabs>li:last'); will result in:
    • Edit
    • An element
    • insertBefore сделает противоположное вышеизложенному:

       $('
    • An element
    • ').insertBefore('ul.tabs>li:last'); will result in:
    • An element
    • Edit
    • Вы должны добавить в контейнер, а не последний элемент:

       $("#content ul").append('
    • Message Center
    • ');

      Функция append () должна была, вероятно, быть вызвана add () в jQuery, потому что иногда это путает людей. Вы могли бы подумать, что он добавляет что-то после данного элемента, в то время как он фактически добавляет его в элемент.

      Вместо

       $("#header ul li:last") 

      пытаться

       $("#header ul") 
       $("#content ul").append('
    • Message Center
    • ');
       $("#content ul").append('
    • Message Center
    • ');

      Вот несколько отзывов о читаемости кода (бесстыдная плагин для блога). http://coderob.wordpress.com/2012/02/02/code-readability

      Рассмотрим разделение объявления ваших новых элементов от действия добавления их в ваш UL .. Он будет выглядеть примерно так:

       var tabSpan = $('', { html: 'Message Center' }); var messageCenterAnchor = $('', { href='https://stackoverflow.com/user/messages', html: tabSpan }); var newListItem = $('
    • ', { html: messageCenterAnchor, "id": "myIDGoesHere" }); // NOTE: you have to put quotes around "id" for IE.. $("content ul").append(newListItem);

      Счастливое кодирование 🙂

      Это еще один

       $("#header ul li").last().html('
    • Menu 5
    • ');

      легко

       // Creating and adding an element to the page at the same time. $( "ul" ).append( "
    • list item
    • " );

      Это самый короткий способ сделать это

       list.push($('
    • ', {text: blocks[i] })); $('ul').append(list);
    • Где блоки в массиве. и вам нужно пройти через массив.

    • Как выполнить итерацию json-данных в jquery
    • полный календарный выбор ячейки на мобильном устройстве?
    • Выберите все содержимое текстового поля, когда он получает фокус (Vanilla JS или jQuery)
    • jQuery - получить заголовки ответов AJAX
    • Как получить выражение селектора jQuery в виде текста?
    • Перенаправление определенных запросов URL-адресов на локальный сайт
    • Холст HTML5 100% Ширина Высота видового экрана?
    • Как сделать выпадающий список только с использованием jquery?
    • Есть ли способ предотвратить совпадение событий в jQuery FullCalendar?
    • Комбинированное общее количество для нескольких слайдеров jQuery-UI
    • Как предотвратить прыжок на якорный щелчок?
    • Давайте будем гением компьютера.