Welcome to mirror list, hosted at ThFree Co, Russian Federation.

GlobalNav.js « javascript « source - github.com/d-kusk/minimage.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: a7a25c6b3938b4940495ab7c90806cb3dc1c1ff2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
class GlobalNav {

  constructor() {
    this.opener = document.querySelectorAll('.c-menu');
    this.closer = document.querySelectorAll('.c-global-nav__closer');
    this.overlay = document.querySelectorAll('.c-overlay');
    this.isOpen = false;

    Array.from(this.opener, (opener) => {
      opener.addEventListener('click', this.overlaySwitcher.bind(this), false);
    });

    Array.from(this.closer, (closer) => {
      closer.addEventListener('click', this.overlaySwitcher.bind(this), false);
    });
  }

  overlaySwitcher() {
    if (this.isOpen) {
      this.overlay.forEach((overlay) => {
        this.isOpen = false;
        overlay.classList.remove('isShow');
      });
    } else {
      this.overlay.forEach((overlay) => {
        this.isOpen = true;
        overlay.classList.add("isShow");
      })
    }
  }
}

export default GlobalNav