Добавление ли динамик в меню ul с помощью jquery

0

У меня есть меню, которое уже загружено jquery. Я не хочу редактировать текущий js файл, который загружает это меню, поэтому я хочу, чтобы jquery добавила дополнительную li в конце последнего li в этом меню. Моя структура меню:

<div class="toolbar">
    <ul id="dcsns-filter" class="option-set filter">
        <li><a href="#filter" data-group="dc-filter" data-filter="*" class="selected link-all">all</a>
        </li>
    </ul>
</div>    

Я пробовал код ниже, не случайно.

<script>
$(document).ready(function () {
    var tsource = "http://www.google.com"
    $(".dcsns-toolbar").find("li:last").after("<div style='width:100px; height:61px; float: left; top:0; position: absolute; margin-top:140px; margin-right:5px;'><div style=' width:65px; height:61px; float:left;'>Πηγή: <a href='" + tsource + "' target='_blank' style='color:#fff; text-decoration:none; font-family:Verdana, Geneva, sans-serif; font-size:12px;'>Google</a></div></div>");
});
</script>

Спасибо!!

  • 0
    В вашем примере у вас нет элемента с классом .dcsns-toolbar .
  • 0
    Кроме того, вы должны добавлять только <li> к <ul> .
Теги:

3 ответа

4
Лучший ответ

Я верю, что у вас есть ошибка в вашем селекторе jQuery:

$(".dcsns-toolbar")  // <--- This element doesn't exist

должно быть

$('#dcsns-filter')

а затем jQuery найдет ваш элемент, и вы можете добавить к нему.

$('#dcsns-filter').find("li:last").after("<div style='width:100px; height:61px; float: left; top:0; position: absolute; margin-top:140px; margin-right:5px;'><div style=' width:65px; height:61px; float:left;'>Πηγή: <a href='" + tsource + "' target='_blank' style='color:#fff; text-decoration:none; font-family:Verdana, Geneva, sans-serif; font-size:12px;'>Google</a></div></div>");
  • 0
    Уважаемый @mark, я добавил этот код: $ ('# dcsns-filter'). Find ("li: last"). After ("<div style = 'width: 100px; высота: 61px; float: left; background-color : # 000; "> </ DIV>"); Без удачи ... если я проверяю элемент и помещаю div после последнего li, он работает, но не загружает его с помощью Jquery.
  • 0
    @IreneT. Что не загружается? Если с этими элементами были связаны события, и вы создаете новый элемент, вам нужно будет повторно привязать селектор событий, чтобы включить новый элемент.
1
var innerHtml = '<div>...</div>';
var newListItem = $('<li />').html(innerHtml);
$("#dcsns-filter").append(newListItem);
0
$("#dcsns-filter").append('Your new li html');
  • 0
    Вы, вероятно, должны отформатировать Your new li html как новый элемент списка HTML.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню