PageSourceSearch

https://www.jkllamps.com/home/wp-content/plugins/twentyfourteen-ac…/TwentyFourteen_Accordion_Menu.js?ver=5.5

js jkllamps.com collected 2026-10-04 13:31:13 UTC 3,517 bytes, 185 lines download raw bytes

1function TwentyFourteen_Accordion_Menu(){
2
3    // if we are not on mobile (menu icon is hidden) show sub items and bail
4
5    if ( jQuery('#masthead .menu-toggle').is(':hidden') ){
6
7	// show sub menus
8
9	jQuery('#mobile-site-navigation ul#menu-mobile-nav ul.sub-menu').show();
10
11	return;
12
13    } else {
14
15	// hide sub menus
16
17	jQuery('#mobile-site-navigation ul#menu-mobile-nav ul.sub-menu').hide();
18
19    }
20
21    
22    // top level nav click function
23
24    jQuery('#mobile-site-navigation ul#menu-mobile-nav > li > a').click(function(e){
25
26	
27	// store parent li to variable
28
29	var parent_li = jQuery(this).parent('li');
30
31	
32	// if sub menu does not exist in parent li
33
34	if ( !jQuery('ul.sub-menu', parent_li).first().length ) {
35
36	    return;
37
38	}
39
40	
41	// if sub menu is already active, bail
42
43	if ( parent_li.hasClass('sub-menu-active') ){
44
45	    e.preventDefault();
46
47	    var current_submenu = jQuery('ul.sub-menu', parent_li).first();
48
49	
50		// slide up non-current sub menus
51
52		jQuery(current_submenu).slideUp(function(){
53
54		    
55		    // remove sub-menu-active class from all first level items except current parent li
56
57		    jQuery(parent_li).removeClass('sub-menu-active');
58
59		});
60
61		return;
62	}
63
64	
65	// stop link click
66
67	e.preventDefault();
68
69
70	// store current sub menu in variable
71
72	var current_submenu = jQuery('ul.sub-menu', parent_li).first();
73
74	
75	// slide up non-current sub menus
76
77	jQuery('#mobile-site-navigation ul#menu-mobile-nav > li > ul.sub-menu').not(current_submenu).slideUp(function(){
78
79	    
80	    // remove sub-menu-active class from all first level items except current parent li
81
82	    jQuery('#mobile-site-navigation ul#menu-mobile-nav > li').not(parent_li).removeClass('sub-menu-active');
83
84	    
85	});
86
87	
88	// slide down current sub menu
89
90	current_submenu.slideDown(function(){
91
92	    // add sub-menu-active to current parent li
93
94	    parent_li.addClass('sub-menu-active');
95
96	});
97
98	
99    });
100
101    
102    // second level nav click function
103
104    jQuery('#mobile-site-navigation ul#menu-mobile-nav ul.sub-menu > li > a').click(function(e){
105
106	
107	// store parent li to variable
108
109	var parent_li = jQuery(this).parent('li');
110
111	
112	// if sub menu does not exist in parent li
113
114	if ( !jQuery('ul.sub-menu', parent_li).first().length ) {
115
116	    return;
117
118	}
119
120
121	// if sub menu is already active, bail
122
123	if ( parent_li.hasClass('sub-menu-active') ){
124
125	    return;
126
127	}
128	
129
130	// stop link click
131
132	e.preventDefault();
133
134	
135	// store current sub menu in variable
136
137	var current_submenu = jQuery('ul.sub-menu', parent_li).first();
138
139	
140	// slide up non-current sub menus
141
142	jQuery('#mobile-site-navigation ul#menu-mobile-nav ul.sub-menu > li > ul.sub-menu').not(current_submenu).slideUp(function(){
143
144	    
145	    // remove sub-menu-active class from all second level items except current parent li
146
147	    jQuery('#mobile-site-navigation ul#menu-mobile-nav ul.sub-menu > li').not(parent_li).removeClass('sub-menu-active');
148
149	    
150	});
151
152	
153	// slide down current sub menu
154
155	current_submenu.slideDown(function(){
156
157	    // add sub-menu-active to current parent li
158
159	    parent_li.addClass('sub-menu-active');
160
161	});
162
163	
164    });
165
166    
167}
168
169
170// load menu accordion on doc ready
171
172jQuery(document).ready(function($) {
173
174    TwentyFourteen_Accordion_Menu();
175
176});
177
178
179// load menu accordion on window resize
180
181jQuery(window).resize(function(){
182
183    TwentyFourteen_Accordion_Menu();
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.