javascript - 难倒未捕获的语法错误 : Unexpected token else,

标签 javascript jquery css toggle

所以我正在制作一个带有滑动开关的导航菜单。我希望切换按钮在菜单打开时隐藏,但我仍然希望它占据空间以免弄乱格式。

我的javascript代码如下:

(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;
});

})();

我尝试了多种不同的语法约定,但似乎都不起作用。我收到错误“Uncaught SyntaxError: Unexpected token else”

如有任何帮助,我们将不胜感激。

最佳答案

改变

if ($('body').hasClass('menu-open') == true) {
    $('.outside-toggle').style.visibility = "hidden";
else
    $('.outside-toggle').style.visibility = "visible";
};

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
}

或更好:

$('.outside-toggle').css('visibility', $('body').hasClass('menu-open') ? "hidden" : "visible");

关于javascript - 难倒未捕获的语法错误 : Unexpected token else,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30443034/

相关文章:

javascript - 使用可变数量的参数调用类对象

javascript - 从图像中去除 EXIF 数据

javascript - 单击时更新超链接

javascript - 尝试在某个类上执行每个功能

javascript - Lodash:从数组中创建一个类似哈希集的对象

javascript - Backbone JS : Can you change templates of a view on the fly?

javascript - 看似有效的 JSON 上的 JSON.parse 错误

javascript - 单击外部时关闭 jquery 对话框

css - div 中的中心列表

css - 在小屏幕上让侧栏出现在中间