I am getting an error about:
Error: Parsing error: unexpected token in line 4 (bracket)
But if I delete this bracket the script will not work.
I am new to javascript so I would like somebody to please tell me what is wrong in this code:
Javascript:
var game=document.querySelector("#fortuna"),
times=document.querySelector("nav");
game.addEventListener("click",(
function({currentTarget:e}){
let t=times.classList.toggle("aequilibrium");
e.textContent=t?"MENU":"CLOSE MENU"}));
>Solution :
Solution
var game = document.querySelector("#fortuna"); // need ";" instead of ","
var times = document.querySelector("nav");
// Use "event" instead of "{ currentTarget: e }"
game.addEventListener("click", function(event) {
var t = times.classList.toggle("aequilibrium");
event.currentTarget.textContent = t ? "MENU" : "CLOSE MENU";
});
or
var game = document.querySelector("#fortuna"); // need ";" instead of ","
var times = document.querySelector("nav");
// Use "{ currentTarget }" instead of "{ currentTarget: e }"
game.addEventListener("click", function({ currentTarget }) {
var t = times.classList.toggle("aequilibrium");
currentTarget.textContent = t ? "MENU" : "CLOSE MENU";
});
More information
Old
var statement – MDN Docs
I don’t recommend using var because var variables have functional scope, are globally or functionally scoped, and don’t have block scope, which can lead to confusing code and potential errors.
New
let statement – MDN Docs (recommended from ECMAScript 2015 (ES6))
const statement – MDN Docs (recommended from ECMAScript 2015 (ES6))
const game = document.querySelector("#fortuna"); // use "const"/"let" insteaf of "var" because you don't modified it in snippet
const times = document.querySelector("nav"); // use "const"/"let" insteaf of "var" because you don't modified it in snippet
game.addEventListener("click", function(event) {
const t = times.classList.toggle("aequilibrium"); // use "const"/"let" insteaf of "var" - "const" because you don't modified it in snippet
event.currentTarget.textContent = t ? "MENU" : "CLOSE MENU";
});