Задать вопрос
zorro76
@zorro76

Как при помощи js сгенерировать двухуровневое меню?

Подскажите, покажите или натолкните на мысль как это сделать на js. Каков алгоритм выполнения? В голову ничего не приходит, даже не представляю с чего начать и как написать код js.

А есть такое условие:
В header сайта динамически при помощи js с генерировать двухуровневое меню типа
ul>li>a, динамически добавить заголовок для меню - кнопка "Меню", и меню расположить горизонтально.
  • Вопрос задан
  • 419 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 2
@VA_ic2b
Попробуйте четко сформулировать свою задачу. На то, что Вы написали нужно сделать следующие шаги.
Подключите jquery (jquery.com).
Сделайте шаблон для вывода меню.
После загрузки страницы добавьте элемент меню в header
$(document).ready(function(){
$('header').append(ваш_элемент_с_меню);
...
});

Смотрите api.jquery.com/append
Ответ написан
zorro76
@zorro76 Автор вопроса
Вот такое решение, но снова есть вопрос: как добавить .button например в меню
var menu = [
        {
        name: 'Menu 1',
        submenu: [
            {
                name: 'Submenu 1.1',
                href: 'http://test1.com',
                id: 'submenu1'
            },
            {
                name: 'Submenu 1.2',
                href: 'http://test2.com',
                id: 'submenu2'
            }
        ]
    },
    {
        name: 'Menu 2',
        submenu: [
            {
                name: 'Submenu 2 1',
                href: 'wwww.ccc.ru',
                id: 'submenu2.1'
            },
            {
                name: 'Submenu 2 2',
                href: 'wwww.vcxcvxv.ru',
                id: 'submenu2.2'
            }
        ]        
    },
    {
        name: 'Menu 3',
        submenu: [
            {
                name: 'Submenu 3.1',
                href: 'http://test1.com',
                id: 'submenu1'
            },
            {
                name: 'Submenu 3.2',
                href: 'http://test2.com',
                id: 'submenu2'
            }
        ]
    }
];

$(document).ready(function(){

    var html = '';
    html += '<ul class="menu">';

    $.each(menu, function(key,value) {

        html += '<li><a>'+value.name+'</a>';
        html += '<ul class="submenu">';

        $.each(value.submenu, function(skey,svalue) {
            html += '<li><a id="'+svalue.id+'" href="'+svalue.href+'">'+svalue.name+'</a></li>';
        });

        html += '</ul></li>';
    });

    html += '</ul>';
    $( "header" ).append(html);
});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
LittleFatNinja
@LittleFatNinja
горе девелопер, любитель лютой садомии
ul>li>a
это не двух уровневое меню
это просто меню ерстается на css
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы