Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function parserMenu(html) {
- html = '<div><ul>' + html + '</ul></div>';
- var jqueryHtml = $(html);
- let menu = new Object;
- jqueryHtml.children('ul').children('li').each(function( index ) {
- var nameElement = $( this ).children('a').text();
- menu[index] = new Object;
- menu[index].name = nameElement;
- if ($( this ).children('ul').children('.has-sub')) {
- menu[index].submenu = parserMenu($( this ).children('ul').html());
- }
- });
- return menu;
- }
- function MenuToHTML(menu = new Object, idMenu = '', level = 0){
- var html = '<nav class="nav nav-pills flex-column">';
- var separator = '';
- if (level > 5) {
- level = 5;
- }
- if (idMenu) {
- separator = '-';
- }
- $.each(menu, function(index, element) {
- let idElement = Number(index) + 1;
- idElement = idMenu + '' + separator + '' + idElement;
- html += '<a class="nav-link ml-' + level + '" href="#item-1" id="' + idElement + '">' + element.name + '</a>';
- html += MenuToHTML(element.submenu, idElement, level + 2);
- });
- html += '</nav>';
- return html;
- }
- function echoMenu(){
- var html = $('a[href="/catalog"]').next('ul').html();
- html = MenuToHTML(parserMenu(html));
- html = '<nav id="navbar-example3" class="navbar navbar-light bg-light">' + html + '</nav>';
- $('#navbar-example3').remove();
- $('[data-viewblock="Catalogs"]').after(html);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement