jQuery在水平滚动后找到第一个可见元素

时间:2010-05-22 18:31:21

标签: javascript jquery

我是jQuery的新手(只有两周大),所以请耐心等待。我知道前段时间问了一个非常相似的问题,但我不知道如何调整问题的答案。我有一个非常宽的多列布局,如下所示:

| aaaa | bbbb | cccc | …   |
| aaaa | b    | cc   | …   |
| aaa  | cccc | ddd  | …   |

代码如下:

<div id="container">
    <p>aaaaaaaaaaa</p>
    <p>bbbbb</p>
    <p>ccccccccccc</p>
    <p>dddddddddd</p>
    ...
    <p>xxxxxx</p>
</div>

没有垂直滚动,并且容器宽度设置为仅显示两列。用户向左或向右滚动以查看相关文本。我想要的是获取当前显示的位置,存储它(可能在cookie中)并在用户下次打开页面时检索它。

我认为我需要一种方法来找出目前最左侧的段落,但其他建议非常受欢迎。

有什么想法吗?

BTW:这是一个内部项目,所以只有Mozilla: - )

1 个答案:

答案 0 :(得分:1)

建议:为什么检测起始段落,因为用户可以在段落之间滚动。

aa|bbbb|cc

这里用户看到三个段落(1个完整,2个部分),因为滚动是连续的而不是段落的离散。除非禁用手动滚动,并且用户只能在某些自定义控件之间向左或向右移动,例如:

&lt; &gt;

然后您可以简单地保存左滚动状态并在重新打开页面时恢复。您还可以使用新的localStorage API代替Cookie,以便在本地会话中保存数据。

jsfiddle上尝试此示例。滚动并刷新或关闭并重新打开页面。