11var menu = ( function ( ) {
22
3- var _bind = function ( ) {
4- var allMenuNavButton = helper . eA ( ".menu-nav-button" ) ;
5- var menuClose = helper . e ( ".menu-close" ) ;
6- allMenuNavButton . forEach ( function ( arrayItem , index ) {
7- arrayItem . addEventListener ( "click" , function ( ) {
8- _tab ( this ) ;
9- } , false ) ;
10- } ) ;
11- menuClose . addEventListener ( "click" , function ( ) {
12- close ( ) ;
13- shade . destroy ( ) ;
14- pagelock . render . toggle ( ) ;
15- } , false ) ;
16- } ;
17-
18- var _scrollToTop = function ( ) {
19- if ( window . innerWidth < 550 ) {
20- helper . e ( ".menu-area" ) . scrollTop = 0 ;
21- } else {
22- helper . e ( ".menu-content" ) . scrollTop = 0 ;
23- } ;
24- } ;
25-
26- var _tab = function ( button ) {
27- var allMenuNavButton = helper . eA ( ".menu-nav-button" ) ;
28- var allMenuContentArea = helper . eA ( ".menu-content-area" ) ;
29- var target = helper . e ( button . dataset . target ) ;
30- allMenuNavButton . forEach ( function ( arrayItem , index ) {
31- helper . removeClass ( arrayItem , "active" ) ;
32- } ) ;
33- allMenuContentArea . forEach ( function ( arrayItem , index ) {
34- helper . addClass ( arrayItem , "is-hidden" ) ;
35- } ) ;
36- helper . addClass ( button , "active" ) ;
37- helper . removeClass ( target , "is-hidden" ) ;
38- _scrollToTop ( ) ;
39- } ;
3+ var mod = { } ;
404
41- var close = function ( ) {
5+ mod . open = function ( ) {
426 helper . setObject ( {
437 object : state . get ( ) ,
448 path : "menu" ,
45- newValue : false
9+ newValue : true
4610 } ) ;
47- render . menu ( ) ;
48- render . tabindex ( ) ;
4911 } ;
5012
51- var open = function ( ) {
52- _scrollToTop ( ) ;
13+ mod . close = function ( ) {
5314 helper . setObject ( {
5415 object : state . get ( ) ,
5516 path : "menu" ,
56- newValue : true
17+ newValue : false
5718 } ) ;
58- render . menu ( ) ;
59- render . tabindex ( ) ;
6019 } ;
6120
62- var toggle = function ( ) {
21+ mod . toggle = function ( ) {
6322 if ( state . get ( ) . menu ) {
6423 helper . setObject ( {
6524 object : state . get ( ) ,
6625 path : "menu" ,
6726 newValue : false
6827 } ) ;
6928 } else {
70- _scrollToTop ( ) ;
29+ render . scrollToTop ( ) ;
7130 helper . setObject ( {
7231 object : state . get ( ) ,
7332 path : "menu" ,
7433 newValue : true
7534 } ) ;
7635 } ;
77- render . menu ( ) ;
78- render . tabindex ( ) ;
7936 } ;
8037
8138 var render = { } ;
8239
83- render . menu = function ( ) {
40+ render . scrollToTop = function ( ) {
41+ if ( window . innerWidth < 550 ) {
42+ helper . e ( ".menu-area" ) . scrollTop = 0 ;
43+ } else {
44+ helper . e ( ".menu-content" ) . scrollTop = 0 ;
45+ } ;
46+ } ;
47+
48+ render . tab = function ( menuNavButton , menuContentArea ) {
49+ var allMenuNavButton = helper . eA ( ".menu-nav-button" ) ;
50+ var allMenuContentArea = helper . eA ( ".menu-content-area" ) ;
51+ allMenuNavButton . forEach ( function ( arrayItem , index ) {
52+ helper . removeClass ( arrayItem , "active" ) ;
53+ } ) ;
54+ allMenuContentArea . forEach ( function ( arrayItem , index ) {
55+ helper . addClass ( arrayItem , "is-hidden" ) ;
56+ } ) ;
57+ helper . addClass ( menuNavButton , "active" ) ;
58+ helper . removeClass ( menuContentArea , "is-hidden" ) ;
59+ render . scrollToTop ( ) ;
60+ } ;
61+
62+ render . toggle = function ( ) {
8463 var html = helper . e ( "html" ) ;
8564 if ( state . get ( ) . menu ) {
8665 helper . addClass ( html , "is-menu-open" ) ;
8766 helper . e ( ".menu" ) . focus ( ) ;
8867 shade . render ( {
8968 action : function ( ) {
90- close ( ) ;
69+ mod . close ( ) ;
70+ render . toggle ( ) ;
71+ menu . render . tabindex . toggle ( ) ;
9172 pagelock . render . toggle ( ) ;
9273 }
9374 } ) ;
@@ -96,31 +77,31 @@ var menu = (function() {
9677 } ;
9778 } ;
9879
99- render . tabindex = function ( ) {
100- var menu = helper . e ( ".menu" ) ;
101- if ( state . get ( ) . menu ) {
102- menu . tabIndex = 1 ;
103- menu . querySelectorAll ( "[tabindex]" ) . forEach ( function ( arrayItem , index ) {
104- arrayItem . tabIndex = 1 ;
105- } ) ;
106- } else {
107- menu . tabIndex = - 1 ;
108- menu . querySelectorAll ( "[tabindex]" ) . forEach ( function ( arrayItem , index ) {
109- arrayItem . tabIndex = - 1 ;
110- } ) ;
111- } ;
80+ render . tabindex = {
81+ toggle : function ( ) {
82+ var menu = helper . e ( ".menu" ) ;
83+ if ( state . get ( ) . menu ) {
84+ menu . tabIndex = 1 ;
85+ menu . querySelectorAll ( "[tabindex]" ) . forEach ( function ( arrayItem , index ) {
86+ arrayItem . tabIndex = 1 ;
87+ } ) ;
88+ } else {
89+ menu . tabIndex = - 1 ;
90+ menu . querySelectorAll ( "[tabindex]" ) . forEach ( function ( arrayItem , index ) {
91+ arrayItem . tabIndex = - 1 ;
92+ } ) ;
93+ } ;
94+ }
11295 } ;
11396
11497 var init = function ( ) {
115- _bind ( ) ;
116- close ( ) ;
98+ mod . close ( ) ;
99+ render . toggle ( ) ;
117100 } ;
118101
119102 return {
120103 init : init ,
121- close : close ,
122- open : open ,
123- toggle : toggle ,
104+ mod : mod ,
124105 render : render
125106 } ;
126107
0 commit comments