Javascript 切换按钮不起作用?(未捕获的语法错误:意外标识符)

Javascript 切换按钮不起作用?(未捕获的语法错误:意外标识符),javascript,jquery,Javascript,Jquery,我的代码有问题。我用一个按钮隐藏和显示菜单,但它不起作用。我不明白这个问题 UnthSytRealError:意外标识符::PAR。三, 请首先检查您的控制台,并查看起始代码: SyntaxError:应为标识符,但找到了“$” 从控制台启动调试 您没有将处理程序分配给click函数,因为您缺少函数键,并且第二个removeClass中有一个double,if语句也没有包含paren 旁注:但是如果您想选择一个类或一个ID,使用正确的 代码: 演示: click方法使用了一个匿名函数,您忽略了

我的代码有问题。我用一个按钮隐藏和显示菜单,但它不起作用。我不明白这个问题

UnthSytRealError:意外标识符::PAR。三,


请首先检查您的控制台,并查看起始代码:

SyntaxError:应为标识符,但找到了“$”

从控制台启动调试

您没有将处理程序分配给click函数,因为您缺少函数键,并且第二个removeClass中有一个double,if语句也没有包含paren

旁注:但是如果您想选择一个类或一个ID,使用正确的

代码:

演示:


click方法使用了一个匿名函数,您忽略了该函数。另外一节课上也有一个备用的,而且“最后也不需要”。您还缺少if语句中的一个。正如其他人所说,您缺少函数,但它不是有效的选择器,我在if语句中添加了一个,但这是编码首选项

$(function () {
    $("button").click(function () { //but is not valid selector, button is
        if ($("#div").hasClass("class")) { //problem is here
            $("#div").removeClass("class").addClass("anotherclass");
        } else {
            $("#div").removeClass("anotherclass").addClass("class");
        }
    });
});

我在代码中发现了一个问题:当使用单击快捷方式时,必须传递函数,而不是对象。以下是解决方案:

$(function() {
  $("button").click(function(){
     $("#div").toggleClass("anotherclass class");
  });
});

请注意,jQuery方法toggleClass如果在元素div中找不到该类,则将该类添加到另一个类,如果该类已经存在,则删除该元素上的该类。

结尾的撇号是否为键入错误?您缺少该函数。请看一看文档中的示例,应该非常清楚{…但不是dom标记,所以他可能是指$but@amenadiel它可以是一个自定义标记,这是允许的,但考虑到代码的其余部分可能是一个打字错误,我已经阅读了Addy Osmani关于自定义标记的文章,但我严重怀疑这种情况。@amenadiel我同意你的观点,但这是我班的一员,我写错了。是:。感谢所有帮助过我的人我,richbai90它是有效的。如果它对你有效,请接受答案。很高兴我能提供帮助。意外标识符几乎总是意味着某个地方的语法错误
$(function() {
    $("but").click(function() {
        if $("#div").hasClass("class")){  //problem is here
            $("#div").removeClass("class").addClass("anotherclass");
        } else{
            $("#div").removeClass("anotherclass").addClass("class");
        }
    });
});
$(function () {
    $("button").click(function () { //but is not valid selector, button is
        if ($("#div").hasClass("class")) { //problem is here
            $("#div").removeClass("class").addClass("anotherclass");
        } else {
            $("#div").removeClass("anotherclass").addClass("class");
        }
    });
});
$(function() {
  $("button").click(function(){
     $("#div").toggleClass("anotherclass class");
  });
});