我正在制作一个'app like'网页。实际页面比隐藏溢出的浏览器视口更宽。点击不同的链接会将CSS变为动画到不同的部分。这是一个非常简单的演示: http://smartpeopletalkfast.co.uk/pos/更改我的web应用程序的浏览器后退按钮行为?
在这个阶段,我正在开发一个演示版本,而不是一个生产站点。我想拦截浏览器的后退按钮,所以如果你已经浏览到一个部分,你会被带回到前一节,而不是离开网页。在一个完美的世界里,这会发生在用于导航到相同部分的动画中。
这可以实现吗?从研究我不认为它可能拦截并禁用默认浏览器后退按钮。
我知道他们有很多关于在这个网站上禁用浏览器后退按钮的帖子,通常情况下的回复是不要的!然而,在我的页面的不同部分就像导航到单独的页面,所以我认为我试图实现的是与用户的期望保持一致。
基于AJAX的应用程序通常可以实现类似的方式是使用HTML5的历史API。据我所知,你需要添加带有片段的URL到浏览器的历史记录中,就像mysite.com#section2一样。我不知道这会适用于我,但因为水平滚动不是基于像垂直滚动这样的片段链接。也许我可以 使用JavaScript来检测URL何时以#section2之类的片段结束并更改CSS,以便第二部分位于视口中?我想没有办法让这个动画呢?
有没有打算在单页应用中成为“卸载”。 – josh3736 2012-03-20 14:31:30
如果后退按钮被击中,卸载事件肯定会触发。 – Gabe 2012-03-20 14:33:28
http://api.jquery.com/unload/我用他们的例子中的代码,但它似乎并没有为我工作。 $(window).unload(function(){alert(“Bye now!”);}); – Evans 2012-03-20 14:41:56