Função de menu javaScript

Estou tentando criar uma função clique com toogle ativando meu menu nav ul em Media Queries mas não sei se to errando nessa lógica,

Observação: eu consigo fazer com classlist do jQuery mas quero aprender em JS puro.

Segue o script:

function clique() {
        var nave = document.getElementsByTagName('ul');
        addEventListener(toogle, () => {
        nave.classList("active");
    })
};

Eu faria assim:

let nav = document.getElementsByTagName('ul');
nav.addEventListener('click', function() {

    if(!nav.classList.contains('active')) {
        nav.classList.add('active');
    }
    else {
        nav.classList.remove('active')
    }
});

Nem todos os browsers tem suporte a contains, se o seu não tiver, terá que usar o indexOf

2 curtidas

Fala man, blz…

eu tinha feito com evento porém deu erro, ai fiz esse que postei como função.

peguei o seu e troquei a ‘UL’ para ‘FA-BARS’ que é uma classe de um ícone font awersome, mas tem o seguinte erro no console:

Uncaught TypeError: nav.addEventListener is not a function
** at index.html:96**

A minha media query em 620px por aí, está com a UL em display: none; e o .active (active que to tentando chamar em toogle)em BLock.