簡體   English   中英

jQuery意外令牌錯誤=

[英]jQuery unexpected token error =

我在下面的代碼示例的函數toggleNav = function(evt){行上得到"unexpected token =" 我看過許多類似的文章,但似乎看不出它為什么會引發錯誤。

非常感謝您為我指出正確的方向。

<script type="text/javascript">
    $(document).ready(function($) {

     $("#nav > li > a").on("click", toggleNav);

    function toggleNav = function(evt){
    var clicked = $(this).parent().attr("class");
    $("#nav").removeClass("btn1 btn2 btn3 btn4 btn5 btn6 btn7").addClass(clicked);
    evt.preventDefault();
}

});
</script>

這樣嘗試

var toggleNav = function(evt){
    var clicked = $(this).parent().attr("class");
    $("#nav").removeClass("btn1 btn2 btn3 btn4 btn5 btn6 btn7").addClass('clicked');
    evt.preventDefault();
}

或者您可以直接致電喜歡

function toggleNav (evt) {
    var clicked = $(this).parent().attr("class");
    $("#nav").removeClass("btn1 btn2 btn3 btn4 btn5 btn6 btn7").addClass('clicked');
    evt.preventDefault();
}

並且還單擊了引號,因為它是一個類名

您應該只用var toggleNav替換function toggleNav var toggleNav ,就可以了。

或者您也可以刪除該匿名函數,然后執行以下操作:

function toggleNav (evt) {
    var clicked = $(this).parent().attr("class");
    $("#nav").removeClass("btn1 btn2 btn3 btn4 btn5 btn6 btn7").addClass(clicked);
    evt.preventDefault();
}

這看起來更有希望

$(function($) {
  $("#nav > li > a").on("click", function(evt) {
    evt.preventDefault();
    var clicked = $(this).parent().attr("class");
    $("#nav").removeClass("btn1 btn2 btn3 btn4 btn5 btn6 btn7").addClass(clicked);
  });
});

這是一個語法問題,您在那里兩次使用了function關鍵字。 選擇您要使用的方式。 您都可以做。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM