1$(document).ready(function () { 2 var lastMenuItemClicked = null; 3 $(".menu-bar > li.menu-item > a").click(function (e) { 4 e.preventDefault(); 5 var width = $(window).width(); 6 if (width > 767 && width < 992) { 7 var menuBox = $(".overlay-menu-box").remove(); 8 // Find the correct element next to which the menu must be appended 9 var menuItemIndex = parseInt($(this).parent().attr("data-menu-item-index")); 10 var refIndex = menuItemIndex <= 5 ? "5" : "9"; 11 $(".menu-bar > li.menu-item").each(function (i, el) { 12 if ($(el).attr("data-menu-item-index") == refIndex) 13 lastMenuItemInRow = $(el); 14 }); 15 menuBox.insertAfter(lastMenuItemInRow); 16 if (!$(e.target).hasClass("overlay-menu-box") && $(".overlay-menu-box").is(":visible") && (lastMenuItemClicked == null || lastMenuItemClicked[0] == $(this)[0])) { 17 $(".overlay-menu-box").hide(); 18 if (lastMenuItemClicked != null) 19 lastMenuItemClicked.parents("li").removeClass("active"); 20 lastMenuItemClicked = null; 21 } 22 else { 23 if (lastMenuItemClicked != null) 24 lastMenuItemClicked.parents("li").removeClass("active"); 25 lastMenuItemClicked = $(this); 26 lastMenuItemClicked.parents("li").addClass("active"); 27 openOverlayMenu($(this)); 28 } 29 } 30 else if (width > 991) { 31 var menuBox = $(".overlay-menu-box").remove(); 32 // Find the correct element next to which the menu must be appended 33 var refIndex = "9"; 34 $(".menu-bar > li.menu-item").each(function (i, el) { 35 if ($(el).attr("data-menu-item-index") == refIndex) 36 lastMenuItemInRow = $(el); 37 }); 38 menuBox.insertAfter(lastMenuItemInRow); 39 if (!$(e.target).hasClass("overlay-menu-box") && $(".overlay-menu-box").is(":visible") && (lastMenuItemClicked == null || lastMenuItemClicked[0] == $(this)[0])) { 40 $(".overlay-menu-box").hide(); 41 if (lastMenuItemClicked != null) 42 lastMenuItemClicked.parents("li").removeClass("active"); 43 lastMenuItemClicked = null; 44 } 45 else { 46 if (lastMenuItemClicked != null) 47 lastMenuItemClicked.parents("li").removeClass("active"); 48 lastMenuItemClicked = $(this); 49 lastMenuItemClicked.parents("li").addClass("active"); 50 openOverlayMenu($(this)); 51 } 52 } 53 else { 54 if (!$(e.target).hasClass("overlay-menu-box") && $(".overlay-menu-box").is(":visible") && (lastMenuItemClicked == null || lastMenuItemClicked[0] == $(this)[0])) { 55 $(".overlay-menu-box").hide(); 56 if (lastMenuItemClicked != null) 57 lastMenuItemClicked.parents("li").removeClass("active"); 58 lastMenuItemClicked = null; 59 } 60 else { 61 if (lastMenuItemClicked != null) 62 lastMenuItemClicked.parents("li").removeClass("active"); 63 lastMenuItemClicked = $(this); 64 lastMenuItemClicked.parents("li").addClass("active"); 65 var menuItemIndex = parseInt($(this).parent().attr("data-menu-item-index")); 66 var lastMenuItemInRow = null; 67 var menuBox = $(".overlay-menu-box").remove(); 68 // Find the correct element next to which the menu must be appended 69 var refIndex = menuItemIndex <= 3 ? "3" : menuItemIndex <= 6 ? "6" : "9"; 70 $(".menu-bar > li.menu-item").each(function (i, el) { 71 if ($(el).attr("data-menu-item-index") == refIndex) 72 lastMenuItemInRow = $(el); 73 }); 74 menuBox.insertAfter(lastMenuItemInRow); 75 openOverlayMenu($(this)); 76 } 77 } 78 return false; 79 });
80 $(document).click(function (e) { 81 if (!$(e.target).hasClass("overlay-menu-box") && $(".overlay-menu-box").is(":visible") && !$(e.target).hasClass("inner-link") && !$(e.target).hasClass("title") && !$(e.target).hasClass("description")) { 82 e.preventDefault(); 83 $(".overlay-menu-box").hide(); 84 if (lastMenuItemClicked != null) 85 lastMenuItemClicked.parents("li").removeClass("active"); 86 lastMenuItemClicked = null; 87 return false; 88 } 89 }); 90 function openOverlayMenu(sourceLink) { 91 var contentUrl = sourceLink.attr("data-menu-content-url") + "?callback=?"; 92 if (contentUrl) { 93 $.getJSON(contentUrl).done(function (data) { 94 ko.postbox.publish(PostboxTopics.OverlayMenuDataLoaded, data); 95 $(".overlay-menu-box").fadeIn({ 96 duration: 100, 97 easing: "swing" 98 }); 99 }); 100 } 101 else { 102 ko.postbox.publish(PostboxTopics.OverlayMenuDataLoaded, null); 103 $(".overlay-menu-box").fadeIn({ 104 duration: 100, 105 easing: "swing" 106 }); 107 } 108 } 109}); 110//# sourceMappingURL=secondaryMenu.js.map
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.