Devo usare JavaScript vanilla per un progetto. Ho alcune funzioni, una delle quali è un pulsante che apre un menu. Funziona sulle pagine in cui esiste l'id di destinazione, ma provoca un errore nelle pagine in cui l'id non esiste. Nelle pagine in cui la funzione non riesce a trovare l'id, ricevo un errore "Impossibile leggere la proprietà 'addEventListener' di null" e nessuna delle mie altre funzioni funziona.
Di seguito è riportato il codice del pulsante che apre il menu.
function swapper() {
toggleClass(document.getElementById('overlay'), 'open');
}
var el = document.getElementById('overlayBtn');
el.addEventListener('click', swapper, false);
var text = document.getElementById('overlayBtn');
text.onclick = function(){
this.innerHTML = (this.innerHTML === "Menu") ? "Close" : "Menu";
return false;
};
Come lo gestisco? Probabilmente ho bisogno di racchiudere tutto questo codice in un'altra funzione o utilizzare un'istruzione if / else in modo che cerchi l'ID solo su pagine specifiche, ma non esattamente.
class
nel tuo html invece di id
e hai richiesto un getElementById
nei tuoi script.