Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.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/3/html/87.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/4/jquery-ui/2.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
jquery使用定位点更改固定元素文本颜色_Jquery_Html_Css - Fatal编程技术网

jquery使用定位点更改固定元素文本颜色

jquery使用定位点更改固定元素文本颜色,jquery,html,css,Jquery,Html,Css,我试图在固定标题内更改文本的颜色,当它滚动到特定的div时。我几乎没有jQuery知识,但使用指定的像素测量拼凑了一个方法,当滚动到时,所述文本的颜色会改变。 以下是当前jQuery代码: $(document).ready (function () { $(window).scroll (function () { var sT = $(this).scrollTop(); if (sT >= 400) { $('.header').

我试图在固定标题内更改文本的颜色,当它滚动到特定的div时。我几乎没有jQuery知识,但使用指定的像素测量拼凑了一个方法,当滚动到时,所述文本的颜色会改变。
以下是当前jQuery代码:

$(document).ready (function () {
   $(window).scroll (function () {
    var sT = $(this).scrollTop();
        if (sT >= 400) {
            $('.header').addClass('change')
        }else {
            $('.header').removeClass('change')
        }
  });
});
我真正需要的是改变发生在一个锚定点上,这样它就能在不同大小的设备上保持住。希望这有意义

以下是我在codepen中的工作:


希望有人能提供帮助:)

您可以通过以下代码访问:

$(document).ready (function () {
    $(window).scroll (function () {
        var sT = $(this).scrollTop();
            if (sT >= $('.bottom').offset().top) {
                $('.header').addClass('change')
            }else {
                $('.header').removeClass('change')
            }
    });
});

您必须搜索所需对象的偏移量。

您需要将要更改文本颜色的div位置与滚动条位置进行比较

这是代码笔:

您不需要对JQuery代码进行太多更改

只需将您的
if
语句更改为:

if (sT - $('.bottom').position().top > 0) {
    $('.header').addClass('change')
}else {
    $('.header').removeClass('change')
}

@用户3590501如果这是您想要的,您认为可以将其标记为正确吗?