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

Toggle button isn`t working?(Uncaught SyntaxError: Unexpected identifier )

本文关键字:错误 语法 意外 标识符 按钮 不起作用      更新时间:2023-09-26

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

未捕获的语法错误:意外的标识符 :: par. 3

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

正如其他人所说,您缺少该函数,"但是"也不是有效的选择器,我在 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");
        }
    });
});

请先检查您的主机,使用您看到的起始代码:

语法错误:需要标识符,但找到"$"

从控制台启动调试。

您没有为 click 函数分配处理程序,因为您缺少 function() 键,并且在第二个removeClass中有一个双",并且您的 if 语句缺少封闭的参数。

旁注:如果要选择类或 ID,请使用正确的选择器but是自定义 DOM 标记

法典:

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

演示:http://jsfiddle.net/pmHsL/

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

click方法使用匿名函数,您省略了function() .anotherClass"上还有一个备用",最后也不需要'。而且您还缺少 if 语句的)

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

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

请注意,jQuery 方法"toggleClass"添加类("otherclass"),如果在元素("#div")上找不到它,如果元素上已经存在,则删除该类。

相关文章: