Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果li将Class addClass添加到另一个div_Javascript_Jquery_Navigation_Addclass - Fatal编程技术网

Javascript 如果li将Class addClass添加到另一个div

Javascript 如果li将Class addClass添加到另一个div,javascript,jquery,navigation,addclass,Javascript,Jquery,Navigation,Addclass,当我向下滚动时,通过添加类(.fix)来修复导航。其结构如下: <div class="navigation-holder fix"> <div> <nav id="navigation"> <ul id="main-nav"> <li class="menu-item-93" /> <li class="menu-it

当我向下滚动时,通过添加类(.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(95,96,98)有类(.act),我试图将另一个类(.darkmenu)添加到div(.fix)中,但它不起作用…

将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")
        }
    });
});

对于
文档

不需要
,请将您的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")
        }
    });
});

对于
文档

不需要
,我认为您应该使用另一个类并在ready callback中完成它

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

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

我认为您应该使用另一个类并在ready callback中进行检查

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

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

将您的if条件放入
滚动
函数本身,并验证它是否工作!将您的if条件放入
滚动
函数本身,并验证它是否工作!谢谢,现在它工作得很好。如果要在另一个li(93,94,97)中的一个处于活动状态时删除该类(.darkmenu),我需要添加什么?@PranavCBalan Excellent catch
对于
文档
谢谢,现在它工作得很好。如果要在另一个li(93,94,97)中的一个处于活动状态时删除类(.darkmenu),我需要添加什么?@PranavCBalan Excellent catch
对于
文档,我使用的是一个单页模板,因此它必须检查每个滚动步骤。对不起,我之前没有提到。我使用的是一页模板,所以它必须检查每个滚动步骤。对不起,我之前没有提到。