1/**
2 * File navigation.js.
3 *
4 * Handles toggling the navigation menu for small screens and enables TAB key
5 * navigation support for dropdown menus.
6 */
7( function() {
8 var container, button, menu, links, i, len;
9
10 container = document.getElementById( 'site-navigation' );
11 if ( ! container ) {
12 return;
13 }
14
15 button = container.getElementsByTagName( 'button' )[0];
16 if ( 'undefined' === typeof button ) {
17 return;
18 }
19
20 menu = container.getElementsByTagName( 'ul' )[0];
21
22 // Hide menu toggle button if menu is empty and return early.
23 if ( 'undefined' === typeof menu ) {
24 button.style.display = 'none';
25 return;
26 }
27
28 menu.setAttribute( 'aria-expanded', 'false' );
29 if ( -1 === menu.className.indexOf( 'nav-menu' ) ) {
30 menu.className += ' nav-menu';
31 }
32
33 button.onclick = function() {
34 if ( -1 !== container.className.indexOf( 'toggled' ) ) {
35 container.className = container.className.replace( ' toggled', '' );
36 button.setAttribute( 'aria-expanded', 'false' );
37 menu.setAttribute( 'aria-expanded', 'false' );
38 } else {
39 container.className += ' toggled';
40 button.setAttribute( 'aria-expanded', 'true' );
...
</html>