1

我想知道一个对象在页面上的位置,

我做了那个功能

$(window).scroll(function () { 
    var elemento = $("#containerY");
    var positionY = elemento.position();
    $( ".valorY" ).text("top: " + positionY.top )
})

它在页面加载时有效,但$( ".valorY" )不刷新编号,并且在页面滚动时始终显示相同,

怎么了?

4

3 回答 3

1

您应该使用($ window).scrollTop()来获取浏览器顶部边框的 y 坐标并($ 'yourElement').scrollTop()获取其滚动位置。您可以比较这些以查看屏幕上显示的内容和未显示的内容。

于 2013-08-01T21:45:38.360 回答
0

听起来您只需要从元素位置中减去窗口的滚动位置:

$(window).scroll(function () { 
    var elemento = $("#containerY");
    var positionY = elemento.position();
    $( ".valorY" ).text("top: " + (positionY.top - $(window).scrollTop()) )
})
于 2013-08-01T22:04:50.697 回答
-1

谢谢,这是解决方案!

positionY.top - topBrowsere

和代码:

$(document).ready(function(){
 $(window).scroll(function(){
    var elemento = $("#containerY");
    var positionY = elemento.position();
    var topBrowser = $(window).scrollTop();
    $( ".valorY" ).text("top: " + (positionY.top - topBrowser) );

    })
})
于 2013-08-02T07:11:53.350 回答