1

以下に書かれている多くのコードを私に打ち負かさないでください。

var flip = 0;
$('#btn').click(function () {
$('#blck').toggle( flip++ % 2 == 0 );
$('#menu-btn') .removeClass('close') .addClass('open')
});

私が2つにまとめたコードは、別のdivのクラスを変更しながら、開始と終了のdivを実行する必要があります。問題は、2番目のオブジェクトのクラスが2回目のクリックに戻らないことです...私が理解しているように、それは条件IFである必要があります。言語の構文を理解するのを手伝ってください。

事前に感謝し、悪い英語をお詫びします。

質問は閉じられました。gillescに感謝します。あなたの提案はうまくいきませんでした、私は追加しなければなりませんでした:

var flip = 0;
$('#btn').click(function () {
$('#blck').toggle( flip++ % 2 == 0 );
$('#menu-btn').toggleClass('close open');
});

これですべてが整いました

4

2 に答える 2

3

if は必要ありません。クラスを切り替えるだけです。ブロックも同じように切り替えるだけです。

 $('#btn').click(function () {
        $('#blck').toggle();
        $('#menu-btn').toggleClass('close open');
    });
于 2012-04-14T12:37:14.023 に答える
1
var flip = 0;

$('#btn').click(function () {
    var menu_button = $('#menu-btn');

    $('#blck').toggle( flip++ % 2 == 0 );

    if (menu_button.hasClass('open')) {
        menu_button.removeClass('close');
        menu_button.addClass('open');
    } else {
        menu_button.removeClass('open');
        menu_button.addClass('close');
    }
};
于 2012-04-14T12:31:10.360 に答える