方法“的结果值”;。scrollTop()jQuery,HTML 问题是:

方法“的结果值”;。scrollTop()jQuery,HTML 问题是:,jquery,html,Jquery,Html,指向示例的链接: 滚动时,.scrollTop()得到哪个结果值 上例中的division标记在到达窗口顶部时,通过条件if语句将其位置属性设置为fixed 然而,为什么在本例中,“大于”.offset().top有效,而“等于”

指向示例的链接:

滚动时,
.scrollTop()
得到哪个
结果值

上例中的
division标记
在到达
窗口
顶部时,通过
条件if语句
将其位置属性设置为fixed

然而,为什么在本例中,“大于”
.offset().top
有效,而“等于”
,在多次尝试后都不起作用

以“等于”为例:
我之所以这样问,是因为我认为
等于
窗口的
顶部:0
也能正常工作,因为当窗口滚动到除法标记之外时,它添加了一个类来修复视口中的问题。

函数返回内容向下滚动的像素数,即窗口上方有多少像素

滚动时,不会为滚动内容的每个像素都显示一个事件。如果使用
==
运算符检查偏移量,大多数情况下都会错过它。使用
操作符可确保元素的顶部一移出顶部窗口,元素就会固定


如果将
scrollTop
中的值与零进行比较,则只有向下滚动,然后再向上滚动到顶部时,才会出现这种情况。

非常感谢您的回答。这正是我想要的。这是针对
动画的吗?@user1860822:不,它不是针对动画的。我认为
等于
窗口的
顶部:0
也可以工作。然而,Guffa的回答相当清楚。
/* First: */
/* Set the Position of the Division Tag to Fixed When Reaching the Top of the Window While Scrolling */
            
$(window).scroll(function(){ 

    var u_div_cn = $('div#container_nav');
    var u_os_top_read = $('div#container_nav').offset().top;
    
    if ($(window).scrollTop() > u_os_top_read) {      
    u_div_cn.addClass('set_position');};

});
$(window).scroll(function(){    

    var u_div_cn = $('div#container_nav');
    var u_div_cn_os_top = $('div#container_nav').scrollTop();
    
 
    if ( u_div_cn_os_top ==  0 ) {      
        u_div_cn.addClass('set_position');
    };

});