Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.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 偏移量()。top给出了错误的值_Javascript_Html_Css - Fatal编程技术网

Javascript 偏移量()。top给出了错误的值

Javascript 偏移量()。top给出了错误的值,javascript,html,css,Javascript,Html,Css,我使用这个js将类添加到当前部分,并基于数据属性将类添加到当前导航元素 var cutoff = $(window).scrollTop(), cutoffRange = cutoff + 88, curSec = $('#main-page').find('.s-active'), // Current section curID = $(curSec).attr('id'), // Current section ID curNav = $('.navigat

我使用这个js将类添加到当前部分,并基于数据属性将类添加到当前导航元素

var cutoff = $(window).scrollTop(),
    cutoffRange = cutoff + 88,
    curSec = $('#main-page').find('.s-active'), // Current section
    curID = $(curSec).attr('id'), // Current section ID
    curNav = $('.navigation').find('li[data-navSections*="'+curID+'"]'); // Find current menu item

    $('.navigation li').removeClass('current-menu-item');
    $(curNav).addClass('current-menu-item');

$('.section').each(function(){

    if ($(this).offset().top > cutoff && $(this).offset().top < cutoffRange) {
        $('.section').removeClass('s-active')
        $(this).addClass('s-active');
        return false; // stops the iteration after the first one on screen
    }

});
var-cutoff=$(窗口).scrollTop(),
截止范围=截止+88,
curSec=$(“#主页”).find(“.s-active”),//当前节
curID=$(curSec.attr('id'),//当前节id
curNav=$('.navigation').find('li[datanavsections*=“'+curID+'”);//查找当前菜单项
$('.navigation li').removeClass('current-menu-item');
$(curNav).addClass('current-menu-item');
$('.section')。每个(函数(){
if($(this.offset().top>截止和$(this.offset().top
这是一个html示例

<section id="section-home" class="s-active"></section>
<section id="section-about" style="margin-top: 990px"></section>
<section id="section-section"></section>

#section-home {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    overflow: hidden;
    z-index: 1;
}

#section-about,
#section-section {
    z-index: 2;
    position: relative;
}

#科室{
位置:固定;
排名:0;
左:0;
身高:100%;
宽度:100%;
溢出:隐藏;
z指数:1;
}
#关于,
#剖面{
z指数:2;
位置:相对位置;
}
第一部分是视差,边距顶部到第二部分由另一个脚本添加

上面的脚本工作得很好,但没有将类添加到第一个固定主部分。这不是offset().top的错误吗


JSFIDLE 这是一个打字错误;) 在此代码中:
$('.section')。每个(函数(){})指向名为
.section
的类。这是不可用的

试试这个:

$('section')
这是一个打字错误;) 在此代码中:
$('.section')。每个(函数(){})指向名为
.section
的类。这是不可用的

试试这个:

$('section')

请提供jsfiddle
offset()
没有错误。所以请注意
offset()
position()
之间的区别。您的问题可能是在计算偏移量后添加了
边距顶部:990px
。所以错误就在你的代码中。提供一个jsfiddle.com复制该问题,我们可以帮助您更好地检查此
$(this).offset().top>cutoff
如果两者都是整数,有时这也是我的问题:)请提供jsfiddle
offset()
没有错误。所以请注意
offset()
position()
之间的区别。您的问题可能是在计算偏移量后添加了
边距顶部:990px
。所以错误就在你的代码中。提供一个jsfiddle.com复制该问题,我们可以帮助您更好地检查此
$(this).offset().top>cutoff
,如果两者都是整数,有时这也是我的问题:)眼睛好的人:)有时我们读得肤浅,却没有注意到这些最小和重要的东西:)眼睛好的人:)有时我们读得肤浅,却没有注意到这些最小和重要的东西