历史插件(一般使用jQuery或AJAX历史记录)

时间:2011-05-18 06:41:49

标签: jquery browser-history

更新的问题:5/19/11 注意:对于像我这样的完整新手 - 首先看看它是否有帮助,我发现它非常有用!

  1. jQuery History Plugin
  2. http://benalman.com/code/projects/jquery-hashchange/examples/hashchange/
  3. 原始问题

    我在网页设计方面相对缺乏经验,但一直致力于在我的新网站上实施历史解决方案。

    注意:我现在已经查看了上面链接中的解决方案   - jQuery.History @ http://tkyk.github.com/jquery-history-plugin/似乎对我有用,但有很多选择!

    我做了一些阅读,得到了一些好的输入(谢谢!),现在有点理解T9b在下面提到的推理;你不能做我原来的问题 - 现在有道理。

    一般情况:我现在已经理解了页面历史和元素历史。

    原始问题#1 : 例如:我想将pageA.html,#divA1而不是整个pageA.html中加载到我的#内容股利我的主页上,并使用历史的解决方案

    • 无法做到这一点,因为您正在混合Page History(PageA.html)和Element History(#divA1)。

    回答#1 : 如果我想使用一个“历史”的解决方案(后退,前进,书签,等...),我真的必须创建一个单独的(新)的 divA1.html 的文件 - 基本的方式要求历史类型解决方案工作。


    问题#2

    我开始查看下面答案中的一些项目 - 对我来说Sessions可能太复杂了,抱歉。所以

    • 是否有链接到javascript中专门为历史类型应用程序设置索引数组的示例,如下所示?
    • 理解(如果浏览器刷新或加入书签,这不会存储信息,我认为这是正确的吗?)
    • 但是,当用户导航页面时,是否会允许用户转发,说明有多个内容从页面中的隐藏div加载?: (除非他们刷新页面等等,我认为T9b在下面说的是什么?)

    再次感谢您的耐心 - 我敢肯定,这些都不是最聪明的问题,但我会继续读书等等,并试图获得更好的,感谢所有帮助迄今为止

2 个答案:

答案 0 :(得分:0)

如果我理解正确 - 您正在将您网站上的另一个页面加载到可滚动的div中(例如,在使用iframe的位置?),并且您想知道这些加载的历史记录,以便您可以自由地向后导航像你在浏览器中那样转发?但是你遇到了.history()插件的问题,因为它只处理整个页面,而不是div的内容。

Righto。如果我已经正确地理解了这一点,那么我认为你最好的选择是将历史存储在一个带有索引和变量的数组中,然后使用索引来确定你当前对的位置。但这取决于您希望将历史记录提供多长时间。一旦刷新页面或离开网站,它就会丢失。

如果您希望它持续更长时间,那么您还必须考虑在服务器上存储历史记录,可能使用会话。

你要做的事情并不完全清楚,我可能完全被误解了!

答案 1 :(得分:0)

有关一般介绍,请参阅Html5历史记录API指南:http://diveintohtml5.info/history.html

Html5允许您修改“真实”历史记录,即您不需要依赖哈希标记。它与所有浏览器的所有版本都不兼容,这就是为什么你可能需要HistoryJS(这是jQuery历史插件的继承者)

如果您在此之后仍有疑问,我建议您立即询问,但要更具体地了解您想要实现的目标(例如,发布您遇到的确切问题或您遇到的问题)。