0

以下のコード サンプル"unexpected token ="の関数行で を取得しています。toggleNav = function(evt){同様の投稿をいくつか見てきましたが、エラーが発生する理由がわかりません。

私を正しい方向に向ける助けは大歓迎です。

<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>
4

4 に答える 4

2

このようにしてみてください

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

また、クラス名であるため、クリックして引用符で囲みます

于 2013-06-22T04:58:29.337 に答える
2

function toggleNavyourをに置き換えるだけvar toggleNavで問題ありません。

または、その無名関数を削除して、次のようにすることもできます。

function toggleNav (evt) {
    var clicked = $(this).parent().attr("class");
    $("#nav").removeClass("btn1 btn2 btn3 btn4 btn5 btn6 btn7").addClass(clicked);
    evt.preventDefault();
}
于 2013-06-22T04:59:02.477 に答える
2

これはより有望に見えます

$(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);
  });
});
于 2013-06-22T05:02:09.203 に答える
0

これは構文の問題です。function キーワードを 2 回使用しています。使用する方法を選択してください。どちらでも構いません。

于 2013-06-22T05:00:39.700 に答える