PageSourceSearch

https://aviationsafety.co.nz/public/templates/apps/navigation/acemenu/acemenu.js?v11?57690487

js aviationsafety.co.nz collected 2026-09-25 10:16:41 UTC 5,091 bytes, 127 lines download raw bytes

1/* 
2Ace Responsive Menu Plugin
3Version: 1.0
4Author: Samson.Onna 
5Email : [email protected]
6----------------------------------------*/
7
8(function ($) {
9    $.fn.aceResponsiveMenu = function (options) {
10
11        //plugin's default options
12        var defaults = {
13            resizeWidth: '768',
14            animationSpeed: 'fast',
15            accoridonExpAll: false
16        };
17  
18        //Variables
19        var options = $.extend(defaults, options),
20            opt = options,
21            $resizeWidth = opt.resizeWidth,
22            $animationSpeed = opt.animationSpeed,
23            $expandAll = opt.accoridonExpAll,
24            $aceMenu = $(this),
25            $menuStyle = $(this).attr('data-menu-style');
26
27        // Initilizing        
28        $aceMenu.find('ul').addClass("sub-menu");
29        $aceMenu.find('ul').siblings('a').append('<a href="javascript:void(0);" class="arrow "></a>');
30        if ($menuStyle == 'accordion') { $(this).addClass('collapse'); }
31
32        // Window resize on menu breakpoint 
33        if ($(window).innerWidth() <= $resizeWidth) {
34            menuCollapse();
35        }
36        $(window).resize(function () {
37            menuCollapse();
38        });
39       
40      
41         
42          
43         
44        // Menu Toggle
45        function menuCollapse() {
46            var w = $(window).innerWidth();
47            
48            try {
49          //   $(".is-wrapper > div").css("margin-top", $("#site-header").height() +"px");
50            } 
51            catch(ex) {}
52
53            if (w <= $resizeWidth) {
54                $aceMenu.find('li.menu-active').removeClass('menu-active');
55                $aceMenu.find('ul.slide').removeClass('slide').removeAttr('style');
56                $aceMenu.addClass('collapse hide-menu');
57                $aceMenu.attr('data-menu-style', '');
58                $('.menu-toggle').show();
59            } else {
60                $aceMenu.attr('data-menu-style', $menuStyle);
61                $aceMenu.removeClass('collapse hide-menu').removeAttr('style');
62                $('.menu-toggle').hide();
63                if ($aceMenu.attr('data-menu-style') == 'accordion') {
64                    $aceMenu.addClass('collapse');
65                    return;
66                }
67                $aceMenu.find('li.menu-active').removeClass('menu-active');
68                $aceMenu.find('ul.slide').removeClass('slide').removeAttr('style');
69            }
70            
71        }
72
73        //ToggleBtn Click
74        $('#menu-btn').click(function () {
75            $aceMenu.slideToggle().toggleClass('hide-menu');
76        });
77
78
79        // Main function 
80        return this.each(function () {
81            // Function for Horizontal menu on mouseenter
82            $aceMenu.on('mouseover', '> li a', function () {
83                if ($aceMenu.hasClass('collapse') === true) {
84                    return false;
85                }
86                $(this).off('click', '> li a');
87                $(this).parent('li').siblings().children('.sub-menu').stop(true, true).slideUp($animationSpeed).removeClass('slide').removeAttr('style').stop();
88                $(this).parent().addClass('menu-active').children('.sub-menu').slideDown($animationSpeed).addClass('slide');
89                return;
90            });
91            $aceMenu.on('mouseleave', 'li', function () {
92                if ($aceMenu.hasClass('collapse') === true) {
93                    return false;
94                }
95                $(this).off('click', '> li a');
96                $(this).removeClass('menu-active');
97                $(this).children('ul.sub-menu').stop(true, true).slideUp($animationSpeed).removeClass('slide').removeAttr('style');
98                return;
99            });
100            //End of Horizontal menu function
101
102            // Function for Vertical/Responsive Menu on mouse click
103            $aceMenu.on('click', '> li a', function () {
104                //if ($aceMenu.hasClass('collapse') === true) {
105                //    return false;
106                //}
107                $(this).off('mouseover', '> li a');
108                
109                if ($(this).parent().hasClass('menu-active')) {
110                    $(this).parent().children('.sub-menu').slideUp().removeClass('slide');
111                    $(this).parent().removeClass('menu-active');
112                } else {
113                    if ($expandAll == true) {
114                        $(this).parent().addClass('menu-active').children('.sub-menu').slideDown($animationSpeed).addClass('slide');
115                        return;
116                    }
117                    $(this).parent().siblings().removeClass('menu-active');
118                    $(this).parent('li').siblings().children('.sub-menu').slideUp().removeClass('slide');
119                    $(this).parent().addClass('menu-active').children('.sub-menu').slideDown($animationSpeed).addClass('slide');
120                }
121            });
122            //End of responsive menu function
123
124        });
125        //End of Main function
126    }
127})(jQuery);

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.