如果Li Hasclass AddClass到另一个Div



当我向下滚动时,通过添加类(.fix)来修复我的导航。它具有以下结构:

<div class="navigation-holder fix">
    <div>
        <nav id="navigation">
            <ul id="main-nav">
                <li class="menu-item-93" />
                <li class="menu-item-95" />
                <li class="menu-item-94" />
                <li class="menu-item-96" />
                <li class="menu-item-97" />
                <li class="menu-item-98" />
            </ul>
        </nav>
    </div>
</div>

LI元素在活动时会自动获得类(.ACT)。

这是固定导航的代码。

$("document").ready(function (jQuery) {
    var nav = $('.navigation-holder');
    $(window).scroll(function () {
        if ($(this).scrollTop() > 125) {
            nav.addClass("fix");
        } else {
            nav.removeClass("fix");
        }
    });
    if ($(".menu-item-95").hasClass("act")) {
        $(".fix").addClass("darkmenu")
    };
});

我试图将另一个类(.darkmenu)添加到div(.fix)如果li(95,96,98)具有类(.ACT),但它不起作用...

将您的if条件放入滚动事件处理程序中,否则只有在加载DOM元素时才执行一次。

$(document).ready(function(jQuery) {
    var nav = $('.navigation-holder');
    $(window).scroll(function() {
        if ($(this).scrollTop() > 125) {
            nav.addClass("fix");
        } else {
            nav.removeClass("fix");
        }
        if ($(".menu-item-95").hasClass("act")) {
            $(".fix").addClass("darkmenu")
        }
    });
});

document

不需要""

我想你与另一个类一起做,然后在"准备回调"中

$(document).ready(function(){
    if ( $(".menu-item-95").hasClass("act") ) {
        $(".navigation-holder").addClass("darkmenu")};
    }
});

嵌套将使脚本检查每个滚动步骤,我相信作者打算检查一次并在用户在特定页面上更改菜单外观。

相关内容

  • 没有找到相关文章

最新更新