así que estoy haciendo un menú de navegación que tiene un interruptor de deslizamiento. Quiero que el botón de alternar se oculte cuando el menú está abierto, pero todavía quiero que ocupe el espacio para no estropear el formato.
Mi código javascript es el siguiente:
(function() {
$(".menu-toggle").bind("click",function() {
$("body").toggleClass("menu-open");
if ($("body").hasClass("menu-open") == true) {
$(".outside-toggle").style.visibility = "hidden";
else
$(".outside-toggle").style.visibility = "visible";
};
return false;
});
}) ();
He probado varias convenciones de sintaxis diferentes y ninguna de ellas parece funcionar. Me sale el error "Uncaught SyntaxError: Un token inesperado más"
Cualquier ayuda sería apreciada.
Respuestas
2 para la respuesta № 1Cambio
if ($("body").hasClass("menu-open") == true) {
$(".outside-toggle").style.visibility = "hidden";
else
$(".outside-toggle").style.visibility = "visible";
};
a
if ($("body").hasClass("menu-open")) { // == true is useless
$(".outside-toggle")[0].style.visibility = "hidden"; // missing [0]
} else { // <------ HERE THE MISSING BRACES
$(".outside-toggle")[0].style.visibility = "visible"; // style is a property of a DOM element, not of a jquery object
}
o mejor:
$(".outside-toggle").css("visibility", $("body").hasClass("menu-open") ? "hidden" : "visible");