PageSourceSearch

https://www.sugarcrm.com/wp-content/themes/sugarcrm-child/megamenu/js/mobile-nav.js?ver=1.0.0

js sugarcrm.com collected 2026-10-01 07:28:06 UTC 6,801 bytes, 185 lines download raw bytes

1var mobile = false;
2jQuery(document).ready(function(){
3  mobileNav(); 
4  megaMenuScrolling();
5  if(jQuery(window).width() < 1024) {
6    mobile = true;
7  }
8  else {
9   mobile = false; 
10  }
11  jQuery(window).on('resize',function(){
12    megaMenuScrolling();
13    if(jQuery(window).width() < 1024) {
14      mobile = true;
15    }
16    else{
17     mobile = false; 
18    }
19  })
20  $('header.new-header:has(.mobile-open) .no-link').on('click', function(e) {
21    e.preventDefault(); // Prevent default link behavior
22    var parent = $(this).closest('.menu-item');
23    var $menuWrapper = parent.find('.menu-wrapper');
24    $('.menu-wrapper').not($menuWrapper).removeClass('active');
25    $('.menu-item').not(parent).removeClass('active');
26    // Toggle the class on the .menu-wrapper
27    parent.toggleClass('active');
28    $menuWrapper.toggleClass('active');
29    if($('.menu-item.active').length) {
30      $('body').addClass('overflow');
31    } else {
32      $('body').removeClass('overflow');
33    }
34  });
35  $('.mega-menu').on('mouseover', function(e) {
36      $('body').addClass('overflow');
37  }).on('mouseout', function(e) {
38    $('body').removeClass('overflow');
39  });
40
41// When clicking anywhere else in the document
42$(document).on('click', function(e) {
43    // Check if the click was outside the .menu-item
44    if (!$(e.target).closest('.primary-nav-menu').length) {
45        $('.menu-wrapper').removeClass('active');
46        $('.menu-item').removeClass('active');
47        $('body').removeClass('overflow');
48    }
49});
50  desktopMegaMenu();
51});
52
53function megaMenuScrolling(){
54  jQuery('.mega-menu-list li.mega-menu').each(function(){
55    let menu_wrap = jQuery(this).find('.menu-wrapper'),
56        window_height = jQuery(window).height();
57    if(menu_wrap.outerHeight() > (window_height - 120 )){
58      menu_wrap.addClass('with-scroll');
59      menu_wrap.height(window_height - 120);
60    }
61    else {
62     menu_wrap.removeClass('with-scroll'); 
63     menu_wrap.css('height','auto');
64    }
65  });
66}
67
68function desktopMegaMenu(){
69  var btn = jQuery('header.site-header #menu-main-menu li.mega-menu');
70  btn.hover(function () {
71
72    if(mobile == false) {
73      if(jQuery(this).hasClass('active-menu')) {
74        jQuery(this).removeClass('active-menu');
75        jQuery('header.site-header #menu-main-menu li.mega-menu').removeClass('active-menu');
76      } else {
77        jQuery('header.site-header #menu-main-menu li.mega-menu').removeClass('active-menu');
78        jQuery(this).addClass('active-menu');
79      }
80      return false;
81    }
82  });
83  
84//  $("header.site-header #menu-main-menu li.mega-menu").hover(
85//    function(){ // Mouse Over
86//    if(mobile == false) {
87//      if(jQuery(this).hasClass('active-menu')) {
88//      jQuery(this).removeClass('active-menu');
89//      jQuery('header.site-header #menu-main-menu li.mega-menu').removeClass('active-menu');
90//      } else {
91//      jQuery('header.site-header #menu-main-menu li.mega-menu').removeClass('active-menu');
92//      jQuery(this).addClass('active-menu');
93//      }
94//      return false;
95//    }
96//    }
97//  );  
98  
99  
100}
101
102function mobileNav(){
103 var btn = jQuery('.site-header a.mobile-nav'),
104     list = jQuery('.site-header nav.site-header__nav'),
105     sub_btn = jQuery('.site-header .site-header__nav li.mega-menu > a'),
106     simple_sub_btn = jQuery('.site-header .site-header__nav li.simple-item.menu-item-has-children > a');
107     
108     
109      jQuery('.site-header .site-header__nav .mega-menu-list > li.simple-item.menu-item-has-children,.site-header .site-header__nav .mega-menu-list > li.mega-menu').append('<span class="arrow-hold"><span class="arrow"></span></span>');
110      var arrow_togler = jQuery('.site-header .site-header__nav li.mega-menu .arrow-hold,.site-header .site-header__nav li.simple-item.menu-item-has-children .arrow-hold');
111     
112
113     btn.click(function(){
114
115      if(mobile == true) {
116        if(btn.hasClass('is-active')) {
117         list.slideUp(300);
118         btn.removeClass('is-active');
119         jQuery('header.site-header').removeClass('mobile-open');
120     jQuery('body').css('overflowY', 'auto');
121        } else {
122         list.slideDown(300);
123         btn.addClass('is-active')
124         jQuery('header.site-header').addClass('mobile-open'); 
125     jQuery('body').css('overflowY', 'hidden');
126        }
127      }
128     });
129     sub_btn.on('click',function(){
130      if(mobile == true) {
131        if(jQuery(this).hasClass('active')){
132         if(jQuery(this).hasClass('no-link')){
133          jQuery(this).next().slideUp(300);
134          jQuery(this).next().next().removeClass('active');
135          jQuery(this).removeClass('active');
136          return false;
137         } else {
138          return true;
139         }
140         
141        } else {
142          jQuery('.site-header .site-header__nav li.mega-menu .menu-wrapper').slideUp(300);
143          jQuery('.site-header .site-header__nav li.mega-menu a, .site-header .site-header__nav ul.mega-menu-list > li span.arrow-hold').removeClass('active');
144         jQuery(this).addClass('active');
145         jQuery(this).next().next().addClass('active');
146         jQuery(this).next().slideDown(300);
147         return false;
148        }
149      }
150     });
151     simple_sub_btn.on('click',function(){
152      if(mobile == true) {
153        if(jQuery(this).hasClass('active')){
154         if(jQuery(this).hasClass('no-link')){
155          jQuery(this).next().slideUp(300);
156          jQuery(this).removeClass('active');
157          jQuery(this).next().next().removeClass('active');
158         } else {
159          return true;
160         } 
161         
162        } else {
163         jQuery('.site-header .site-header__nav li.mega-menu .menu-wrapper').slideUp(300);
164         jQuery('.site-header .site-header__nav li.mega-menu a, .site-header .site-header__nav ul.mega-menu-list > li span.arrow-hold').removeClass('active');
165         jQuery(this).addClass('active');
166         jQuery(this).next().slideDown(300);
167         jQuery(this).next().next().addClass('active');
168         return false;
169        }
170      }
171     });
172     arrow_togler.click(function(){
173      if(jQuery(this).hasClass('active')){
174        jQuery(this).removeClass('active');
175        jQuery(this).prev().slideUp(300);
176        jQuery(this).prev().prev().removeClass('active');
177      } else {
178        jQuery('.site-header .site-header__nav li.mega-menu .menu-wrapper').slideUp(300);
179        jQuery('.site-header .site-header__nav li.mega-menu a, .site-header .site-header__nav ul.mega-menu-list > li span.arrow-hold').removeClass('active');
180        jQuery(this).addClass('active');
181        jQuery(this).prev().slideDown(300);
182        jQuery(this).prev().prev().addClass('active');
183      }
184     });
185}

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.