0

我想创建一个全屏时间轴 Web 应用程序,它可以水平左右滚动,显示一些 html 和 css 格式的文本,可能带有添加的图像、视频和/或音频文件。

时间线应该从它最右边的位置(“今天的日期”)开始,提供一个滚动条,允许用户向左滚动以查看较早的事件,并向右滚动以查看稍晚的事件,一直回到最右边位置(已经提到的“今天的日期”)。

有很多数据要加载到时间线中(价值 150 多年的事件,仅大约 200 页文本)——这让我认为,如果我将所有数据转储到一个水平格式化、可滚动的 html 页面中,它可能会导致一个需要永远加载的超重页面,在某些(大多数?)浏览器中可能难以滚动,甚至可能导致浏览器崩溃。(不过,我可能弄错了。请参阅我的问题#1。)

因此,我正在考虑解决方案,当页面滚动“靠近”页面(左侧或右侧)时将所需数据加载到页面中,并在页面滚动到离它足够远时再次卸载。

不是网络编程“大师”,我对这项任务有点困惑,希望得到一些建议。

我的问题:

  1. 假设不应该立即将所有数据加载到水平页面中,我错了吗?也许这样做可以吗?

  2. 处理整个过程的更浏览器友好的方式是什么:a)花几秒钟从数据库中预加载整个时间线的所有数据,然后在需要时将这些数据的片段显到一个div中?- 或 b) 仅在需要时从数据库中加载数据?

  3. 如何使用 PHP/HTML 实际完成预加载/打印或加载?

  4. 也许有人知道已经完成我所描述的开源或商业水平时间线?

先感谢您!

4

2 回答 2

1

我不确定这是否满足您的所有需求,但看起来可能很接近 - 试试http://timeline.verite.co/

于 2013-02-18T15:01:11.253 回答
1
  1. 这取决于你的情况。但我认为这个想法很棒(我只是觉得你的时间线看起来像一个画廊、一张专辑……)。

  2. 我的答案是ab。我会在需要时从数据库中加载这些数据(但是当页面滚动“关闭”到它时我会加载这些数据)例如:我在 2013 年,我会花几秒钟来加载 2011 年,和 2012 年(或最后 100 项)

  3. 我认为我们可以通过ajax.

  4. 我真的不知道,但我认为您可以从框架中自定义/继承某些东西,这是在 Raad 的回答中介绍的。

-5。您可以创建自己的时间线。也许你会花很多时间来做这件事。

我们如何创建这个时间线?您可以使用关键字搜索:infinite scroller

于 2013-02-18T15:31:32.430 回答