2

好吧,我有一个菜单,我想在那里有一个名为 的类active,当它处于活动状态时,很明显。

为了切换这个类,我使用了 jQuery 切换功能,但它只是在 js 元素中激活它。如果我检查 dom 元素,则永远不会设置此类。但我需要这个类,因为我的 CSS 样式。

我知道已经有很多关于toggleClassjQuery 的主题,但是它们不适合(至少我找不到合适的)

这里有一些代码:

$('#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 回答
0

尝试这个:

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

    // remove active from all tabs
    $('#menu .tab').removeClass('active');

    // make current tab as active
    $tab.addClass('active');
});
于 2013-05-21T14:07:59.507 回答