|
5 | 5 | var SECT_CLASS_RX = /^sect(\d)$/ |
6 | 6 |
|
7 | 7 | var navContainer = document.querySelector('.nav-container') |
8 | | - var navToggle = document.querySelector('.nav-toggle') |
| 8 | + var navToggle1 = document.querySelector('#nav-toggle-1') |
| 9 | + var navToggle2 = document.querySelector('#nav-toggle-2') |
| 10 | + var isNavOpen = window.localStorage && window.localStorage.getItem('sidebar') === 'open' |
9 | 11 |
|
10 | | - navToggle.addEventListener('click', showNav) |
| 12 | + navToggle1.addEventListener('click', showNav) |
| 13 | + navToggle2.addEventListener('click', showNav) |
11 | 14 | navContainer.addEventListener('click', trapEvent) |
12 | 15 |
|
13 | 16 | var menuPanel = navContainer.querySelector('[data-panel=menu]') |
|
41 | 44 | }) |
42 | 45 | }) |
43 | 46 |
|
44 | | - // function openVersion () { |
45 | | - // if (!isOpen) { |
46 | | - // menuPanel.querySelector('.context .version').classList.add('is-active') |
47 | | - // document.querySelector('#nav-versions').classList.add('is-active') |
48 | | - // isOpen = true |
49 | | - // } |
50 | | - // } |
51 | | - |
52 | | - // function closeVersion () { |
53 | | - // if (isOpen) { |
54 | | - // menuPanel.querySelector('.context .version').classList.remove('is-active') |
55 | | - // document.querySelector('#nav-versions').classList.remove('is-active') |
56 | | - // isOpen = false |
57 | | - // } |
58 | | - // } |
59 | | - |
60 | | - // menuPanel.querySelector('.context .version').addEventListener('mousemove', function () { |
61 | | - // openVersion() |
62 | | - // }) |
63 | | - |
64 | | - // document.querySelector('#nav-versions').addEventListener('mouseleave', function () { |
65 | | - // closeVersion() |
66 | | - // }) |
67 | | - |
68 | | - // // NOTE prevent text from being selected by double click |
69 | | - // menuPanel.addEventListener('mousedown', function (e) { |
70 | | - // if (e.detail > 1) e.preventDefault() |
71 | | - // closeVersion() |
72 | | - // }) |
| 47 | + document.querySelector('#nav-collapse-toggle').addEventListener('click', function () { |
| 48 | + if (isNavOpen) { |
| 49 | + document.body.classList.add('nav-sm') |
| 50 | + } else { |
| 51 | + document.body.classList.remove('nav-sm') |
| 52 | + } |
| 53 | + window.localStorage && window.localStorage.setItem('sidebar', !isNavOpen ? 'open' : 'close') |
| 54 | + isNavOpen = !isNavOpen |
| 55 | + }) |
73 | 56 |
|
74 | 57 | function onHashChange () { |
75 | 58 | var navLink |
|
137 | 120 | } |
138 | 121 |
|
139 | 122 | function showNav (e) { |
140 | | - if (navToggle.classList.contains('is-active')) return hideNav(e) |
| 123 | + if (navToggle1.classList.contains('is-active')) return hideNav(e) |
| 124 | + if (navToggle2.classList.contains('is-active')) return hideNav(e) |
141 | 125 | trapEvent(e) |
142 | 126 | var html = document.documentElement |
143 | 127 | html.classList.add('is-clipped--nav') |
144 | | - navToggle.classList.add('is-active') |
| 128 | + navToggle1.classList.add('is-active') |
| 129 | + navToggle2.classList.add('is-active') |
145 | 130 | navContainer.classList.add('is-active') |
146 | 131 | var bounds = nav.getBoundingClientRect() |
147 | 132 | var expectedHeight = window.innerHeight - Math.round(bounds.top) |
|
153 | 138 | trapEvent(e) |
154 | 139 | var html = document.documentElement |
155 | 140 | html.classList.remove('is-clipped--nav') |
156 | | - navToggle.classList.remove('is-active') |
| 141 | + navToggle1.classList.remove('is-active') |
| 142 | + navToggle2.classList.remove('is-active') |
157 | 143 | navContainer.classList.remove('is-active') |
158 | 144 | html.removeEventListener('click', hideNav) |
159 | 145 | } |
|
184 | 170 | document.documentElement.style.setProperty('--nav-width', `${width}px`) |
185 | 171 | window.localStorage && window.localStorage.setItem('nav-width', `${width}`) |
186 | 172 | } |
187 | | - document.querySelector('.resize-handle--x').addEventListener('mousedown', (event) => { |
| 173 | + document.querySelector('.nav-resize').addEventListener('mousedown', (event) => { |
188 | 174 | document.addEventListener('mousemove', resize, false) |
189 | 175 | document.addEventListener('mouseup', () => { |
190 | 176 | document.removeEventListener('mousemove', resize, false) |
|
0 commit comments