检测div的位置并触发功能

时间:2011-07-28 14:18:19

标签: jquery html scroll

我试图在div达到滚动中的某个级别时触发一个函数。

有人可以帮我解决这个问题吗?

代码/小提琴:

http://jsfiddle.net/6hJeT/5/

5 个答案:

答案 0 :(得分:1)

你可以这样做:

$(window).scroll(function(e) {
    var shape = $('#shape').position();
    var bottomDiv = $('#bottom-div').position();
    if (shape.top > bottomDiv.top){
        alert('passed');  
    }

});

在这里摆弄:http://jsfiddle.net/nicolapeluchetti/6hJeT/11/

答案 1 :(得分:1)

http://fiddle.jshell.net/6hJeT/20/

看起来与Nicola相同的答案

答案 2 :(得分:1)

使用window.scrollTop()可以获得there

另外,对于更复杂的情况,您可能需要查看jquery waypoints插件。

答案 3 :(得分:0)

你可以:

if($('#shape').offset().top >= $('#top-div').height()) alert("Boo");

答案 4 :(得分:0)

在这里:http://jsfiddle.net/6hJeT/21/

诀窍是检查身体的scrollTop(这意味着用户向下滚动了多少)并将其与底部div的顶部位置进行比较。

$(window).scroll(function () {
    if ((document.body.scrollTop +  + $("#shape").height()) >= $("#bottom-div").position().top)
        alert("Boo");
});