1 import {Component} from "./component";
3 export class HeaderMobileToggle extends Component {
7 this.toggleButton = this.$refs.toggle;
8 this.menu = this.$refs.menu;
11 this.toggleButton.addEventListener('click', this.onToggle.bind(this));
12 this.onWindowClick = this.onWindowClick.bind(this);
13 this.onKeyDown = this.onKeyDown.bind(this);
17 this.open = !this.open;
18 this.menu.classList.toggle('show', this.open);
19 this.toggleButton.setAttribute('aria-expanded', this.open ? 'true' : 'false');
21 this.elem.addEventListener('keydown', this.onKeyDown);
22 window.addEventListener('click', this.onWindowClick)
24 this.elem.removeEventListener('keydown', this.onKeyDown);
25 window.removeEventListener('click', this.onWindowClick)
27 event.stopPropagation();
31 if (event.code === 'Escape') {
36 onWindowClick(event) {