2

さて、私にはメニューがありactive、アクティブなときに というクラスが必要です。

このクラスを切り替えるには、jQuery のトグル関数を使用していますが、js 要素でアクティブ化するだけです。dom 要素を確認すると、このクラスは設定されていません。しかし、私の CSS スタイルのために、このクラスが必要です。

jQueryについてはすでに多くのトピックがあることは知っていますtoggleClassが、それらは当てはまりません (少なくとも適切なものは見つかりませんでした)。

ここにいくつかのコード:

$('#menu').on('click', '.tab span', function (e) {
    e.stopPropagation();
    var $tab = $(this).parent('.tab');
    $tab.siblings('.tab.active').removeClass('active');
    $tab.toggleClass('active');
});

HTML マークアップ

<div id="menu">
    <div class="tab">
        <span></span>
    </div>
</div>

IE8 を除くすべてのブラウザで動作します よろしくお願いします。

4

2 に答える 2

1

代わりにこれを試してください:

$('#menu').on('click', '.tab span', function (e) {
    e.stopPropagation();
    var $tab = $(this).parent('.tab');
    $tab.addClass('active').siblings('.tab').removeClass('active');
});
于 2013-05-21T14:04:46.517 に答える