web-dev-qa-db-ja.com

jquery:スクロール位置の検出

スクロール中にフッターが表示されたときにアラートを受け取りたい。

$(window).on("mousewheel", function(){
    if ($(window).scrollTop() + $(window).height() > $('#footer').position().top){    
        alert("footer visible");
    }  
    else{
        alert("footer invisible");  
    }
});

http://jsfiddle.net/JRUnr/10/

高さのある条件はすべて正しいように見えますが、スクロール中はそうではありません。

24
Mag

作業中[〜#〜] demo [〜#〜]

これを試して

$(window).scroll(function () {

    if ($(window).scrollTop() + $(window).height() > $('.footer').offset().top) {
        alert("footer visible");
    } else {
        alert("footer invisible");
    }
});

これがお役に立てば幸いです、ありがとう

41
SarathSprakash

このタスクにはjQuery Waypointsという名前のjqueryプラグインがあります( http://imakewebthings.com/jquery-waypoints/

$('#footer').waypoint(function(direction) {
    alert('Top of thing hit top of viewport.');
});
4
Alex Tselegidis

ここに作業フィドルがあります... http://jsfiddle.net/kasperfish/JRUnr/14/

一緒にハッキングされますが、動作します

        flag=true;


$(window).scroll(function() {
    st=$(window).scrollTop();
    $('#topscroll').html(st)


    if(st>1450){
        if(flag)
        alert('test');flag=false;
    }

});
2
kasper Taeymans