Javascript BeautyOfWeb.com上的后退按钮是如何工作的?

Javascript BeautyOfWeb.com上的后退按钮是如何工作的?,javascript,browser,Javascript,Browser,我一直在为浏览器中的后退按钮寻找一些javascript挂钩。但它们似乎只支持哈希url之间的后退/前进。也就是说,您只能从www.mysite.com#page1和www.mysite.com#page2导航,如果您单击“上一步”,url变成没有散列的内容,它们都会失败。像这样:单击一个选项卡,然后返回,它将不起作用 但是在上一个版本中,他们成功地让backbutton在散列url和非散列url之间工作。知道他们是怎么做到的吗?你确定吗?我看到一个杂烩: http://www.beautyof

我一直在为浏览器中的后退按钮寻找一些javascript挂钩。但它们似乎只支持哈希url之间的后退/前进。也就是说,您只能从
www.mysite.com#page1
www.mysite.com#page2
导航,如果您单击“上一步”,url变成没有散列的内容,它们都会失败。像这样:单击一个选项卡,然后返回,它将不起作用


但是在上一个版本中,他们成功地让backbutton在散列url和非散列url之间工作。知道他们是怎么做到的吗?

你确定吗?我看到一个杂烩:

http://www.beautyoftheweb.com/#/highlights/all-around-fast
                              ^-- here
但是假设有一些URL没有它们:你在其他地方看到了什么样的失败?我有一个用于历史管理的intranet应用程序,您可以很高兴地在URL之间来回切换,无论它们是使用哈希的应用程序URL、不使用哈希的应用程序URL,还是其他页面/应用程序的完全无关的URL。(你也可以将散列的内容添加到书签中,当你使用它时,应用程序会返回到正确的位置。)这在我的应用程序中起作用,因为在初始加载时,我会查看散列(如果有的话)是什么,并根据需要重新加载该状态。(我不依赖——甚至不使用——RSH的数据存储方面,只是散列操作。)



编辑刚刚尝试了我在快速搜索中找到的第一个。它可以在“散列”和“未散列”URL之间来回切换。我转到“#2”链接,然后编辑地址栏中的URL以完全删除散列,然后按Enter键。这让我找到了正确的页面。然后单击后退,我正确地看到了“#2”页面。事实上,如果我直接链接到“#2”链接,它会相应地加载其状态。我想你已经看到了一些对历史库的天真使用,在这些历史库中,程序员没有正确处理初始加载。

从我看到的情况来看,所有的URL都是
http://www.beautyoftheweb.com/#/
,例如:-因此,所有人都在使用哈希。

Yuk,另一个“看看我们的浏览器能做什么”我真的不在乎那个,我只对那个特定的功能感兴趣。无论你使用哪种浏览器,它都是一个非常好看的网站……一如往常,这些东西都会受到感知的影响。那个网站让我抓狂,因为它让我一直在等待我想要的信息,这样它就可以做漂亮的动画——或者至少,这是我的看法。不管怎样,它总是可能让我等待,而动画只是在那里消磨时间。但我不这么认为。@t.J.克劳德,这是一个展示网站。这不是关于消费信息,而是了解事情可以做得多好。但正如你所说,这些都是主观的,所以我想没有理由对设计进行争论……这里没有争论。:-)只是说:很漂亮,但对某些人来说很恼火。是的,但是当你点击后退,哈希值消失时,它仍然像你期望的后退按钮那样工作。这就是我一直以来遇到的问题。历史插件似乎只在带哈希标记的url之间工作,但当您从带哈希标记的url单击返回到非带哈希标记的url时,它们将不工作。@peirix:这不是我使用RSH的经验。其他人都没试过。你必须(至少使用RSH)正确地处理初始加载,才能让散列开箱即用,也许你只是看到人们有些天真地使用libs?@peirix:事实上,我很确定这就是你看到的;刚刚更新了我对jQuery历史插件的回答。但是如果加载url时没有开始使用散列,请单击“加载2”,然后单击“上一步”,它不会做任何事情。它将保持“2”加载。这就是我遇到的问题。返回非散列url,重新加载初始内容。这仍然不能真正解决BeautyOfWeb站点是如何做到这一点的。我只是花了15分钟在消息来源中试图弄清楚他们具体做了什么,但还有很多事情需要筛选:-(见我对T.J.Crowder答案的评论)。