2009-09-02 86 views
1

当您在gmail中查看长线程时,屏幕底部会显示一个div,显示下一条消息的作者姓名。当您滚动并查看更多消息时,此div会更新,并始终使用您正在查看的消息之后的消息作者的姓名。使用Javascript确定用户在页面上的位置

您如何看待此功能?

我有一个很长的页面日志信息,我想提醒用户,他们在网页上。我试过看gmail的JavaScript,但代码太混乱,无法遵循。

回答

1

您需要获取当前的滚动偏移量。这决定了用户所在页面的距离。

您需要知道该偏移量处的元素。元素的位置使用它们彼此的每个父元素的偏移来计算。

通常,像JQuery,MooTools,YUI等库有现有的方法来获取滚动位置和元素位置。

1

使用jQuery,您可以获得所有内容的高度,然后根据当前滚动位置以这种方式进行计算。

或者,你可以让他们需要'点击'他们正在查看的东西,然后通过onfocus来完成。

+1

您也可以在jQuery中使用position()方法,这样就不必加上前面元素的高度。有关所有定位方法的列表:http://docs.jquery.com/CSS – 2009-09-02 00:26:58

相关问题