滚动时检测第一个顶部元素

l2a*_*lba 2 javascript jquery scroll detect offset

如何在滚动时检测第一个顶部元素(谁在窗口视图中可见)

像这样...

检测第一个顶部元素

我开始......

$(window).scroll($.debounce(250,function(){
    $('.box').removeClass('current').each(function() {
       //if(statement) {
       //  $(this).addClass('current')
       //}
    });
}));
Run Code Online (Sandbox Code Playgroud)

游乐场: http ://jsfiddle.net/l2aelba/EUztW/

我不知道如何检测哪个第一个盒子在顶部.

Jam*_*gne 5

$(window).scroll($.debounce(250, function(){
    var scrollTop = $(window).scrollTop();
    var $first;
    var firstPos;

    $('.box').each(function() {
            var $box = $(this).removeClass('current');
            var pos = $box.offset();

            if(pos.top > scrollTop && (!firstPos || pos.top < firstPos.top)){
                $first = $box;
                firstPos = pos;
            }
    });

     if($first){
        $first.addClass("current");   
     }
}));
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/EUztW/10/