【问题标题】:jquery how to get the page's current screen top position?jquery如何获取页面的当前屏幕顶部位置?
【发布时间】:2011-08-10 23:54:26
【问题描述】:

jquery 如何获取页面的当前屏幕顶部位置?

如果我将鼠标滚轮滚动到页面的某个部分,如何获取页面的当前顶部位置?

我想单击页面中的一个元素,然后打开一个顶部到当前屏幕顶部的 div。

所以只要把当前屏幕顶部位置放到:

$('#content').css('top','current position');

还有

#content
{
position:absolute;
left:100px;
}

【问题讨论】:

    标签: jquery


    【解决方案1】:

    使用它来获取页面滚动位置。

    var screenTop = $(document).scrollTop();
    
    $('#content').css('top', screenTop);
    

    【讨论】:

    • 完美解决方案
    【解决方案2】:
    var top = $('html').offset().top;
    

    应该这样做。

    编辑:这是$(document).scrollTop()的否定

    【讨论】:

    • 这不会给出 OP 正在寻找的内容。如果我们滚动页面,它将给出 html 元素的偏移顶部,这将是一个负值。
    • 如编辑中所述,这是$(document).scrollTop() 的否定,是的,在这种情况下更合适。但是 html 偏移量 * -1 实际上是一回事。
    • 你是对的,但是$(document).scrollTop() 给出了你想要的,那么为什么要使用$('html').offset().top 并乘以-1
    • @ShankarSangoli 我承认你的回答更合适,这就是我编辑我的原因。答案应该交给你,是的。不过,如果您一开始就知道 0,那么学习 2 种不同的完成任务的方法不是总是更好吗?
    • 在 IE11 中调试: ?$(document).scrollTop() 593 ?$("html").scrollTop() 593 ?$("html").offset().top -0.44000244140625 593是正确的答案。 chrome 中的结果类似,除了最后一个报告为零。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-25
    相关资源
    最近更新 更多