1$(document).ready(function () { 2 // Strict Mode 3 "use strict"; 4 5 //Defines variables 6 var arrow_up = '<i class="fa fa-angle-up" aria-hidden="true"></i>'; 7 var arrow_down = '<i class="fa fa-angle-down" aria-hidden="true"></i>'; 8 var arrow_span = '<span class="rs-menu-parent">' + arrow_down + '</span>'; 9 var close_button = '<div class="sub-menu-close"><i class="fa fa-times" aria-hidden="true"></i>ÐакÑÑÑÑ</div>'; 10 11 //Insert all arrow down span element 12 $('.nav-menu .rs-mega-menu').append(arrow_span); 13 $('.nav-menu > .menu-item-has-children').append(arrow_span); 14 $('.nav-menu > .menu-item-has-children .sub-menu > .menu-item-has-children').append(arrow_span); 15 16 //Insert all close button element 17 $('.nav-menu .menu-item-has-children .sub-menu').append(close_button); 18 $('.nav-menu .rs-mega-menu .mega-menu').append(close_button); 19 20 /*-----------------------------------------------------------------------------------*/ 21 /* OPEN SUB MENU FUNCTION 22 /*-----------------------------------------------------------------------------------*/ 23 $('span.rs-menu-parent').on('click', function(e){ 24 e.preventDefault(); 25 26 var t = $(this); 27 var menu = t.siblings('ul'); 28 var parent = t.parent('li'); 29 var siblings = parent.siblings('li'); 30 var arrow_target = 'span.rs-menu-parent'; 31 32 if (menu.hasClass('sub-menu')) { 33 var menu = t.siblings('ul.sub-menu'); 34 } else if(menu.hasClass('mega-menu')) { 35 var menu = t.siblings('ul.mega-menu'); 36 } 37 38 if (menu.hasClass('visible')) { 39 setTimeout(function() { menu.removeClass('visible'); }, 10); 40 t.html(arrow_down); 41 } else { 42 setTimeout(function() { menu.addClass('visible'); }, 10); 43 t.html(arrow_up); 44 } 45 46 /*-------------------------------------*/ 47 /* CLOSE MENUS 48 /*-------------------------------------*/ 49 50 //Close sub menus 51 parent.find('ul.visible').removeClass('visible'); 52 53 //Close sub menus parents 54 parent.siblings('li').children('ul').removeClass('visible'); 55 56 //Close sub menus child parents 57 siblings.find('ul.visible').removeClass('visible'); 58 59 /*-------------------------------------*/ 60 /* INSERT ARROW DOWN 61 /*-------------------------------------*/ 62 63 //Insert arrow down in sub menus 64 parent.children('ul').find(arrow_target).html(arrow_down); 65 66 //Insert arrow down in sub menus parents 67 siblings.children(arrow_target).html(arrow_down); 68 69 //Insert arrow down in sub menus child parents 70 siblings.find(arrow_target).html(arrow_down); 71 }); 72 73 /*-----------------------------------------------------------------------------------*/ 74 /* CLOSE BUTTON 75 /*-----------------------------------------------------------------------------------*/ 76 $('ul.nav-menu div.sub-menu-close').on('click', function(e){ 77 e.preventDefault(); 78 79 var a = $(this).parent('ul'); 80 a.removeClass('visible'); 81 a.siblings('span.rs-menu-parent').html(arrow_down); 82 }); 83 84 /*-----------------------------------------------------------------------------------*/ 85 /* EFFECTS ON MENU TOGGLE 86 /*-----------------------------------------------------------------------------------*/ 87 $('a.rs-menu-toggle').on('click', function(e){ 88 e.preventDefault(); 89 var menu_height = $('.rs-menu ul').height(); 90 91 if ($(this).hasClass('rs-menu-toggle-open')) { 92 $(this).removeClass('rs-menu-toggle-open').addClass('rs-menu-toggle-close'); 93 $('.rs-menu').animate({height:'0px'},{queue:false, duration:300}).addClass('rs-menu-close'); 94 } else { 95 $(this).removeClass('rs-menu-toggle-close').addClass('rs-menu-toggle-open'); 96 $('.rs-menu').animate({height:menu_height},{queue:false, duration:300}).removeClass('rs-menu-close'); 97 } 98 }); 99 100 /*-----------------------------------------------------------------------------------*/ 101 /* CLOSE MENUS ON RESIZE 102 /*-----------------------------------------------------------------------------------*/ 103 var window_width = 0; 104 105 $(window).on('load', function () { 106 window_width = $(window).width(); 107 $('.rs-menu').addClass( "rs-menu-close" ); 108 }); 109 110 $(window).resize( function(){ 111 if(window_width !== $(window).width()){ 112 $('.visible').removeClass('visible'); 113 $('.rs-menu-toggle').removeClass('rs-menu-toggle-open').addClass( "rs-menu-toggle-close" ); 114 $('.rs-menu').css( "height", "0" ).addClass( "rs-menu-close" ); 115 116 $('span.rs-menu-parent').html( arrow_down ); 117 window_width = $(window).width(); 118 } 119 }); 120 121});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.