我有一个严重依赖 jQuery 的单页网站。作为一个作品集,用户可以点击各种设计,其中jQuery会隐藏主页面,并根据查询字符串返回的内容重构设计页面。
问题是,想要返回主投资组合页面的人自然会按下浏览器上的返回按钮,导致他们返回到之前访问的任何网站(例如 Google 搜索)。而实际上,预期的行为是他们返回到主体。
我的问题是,实现某种方式的最佳方式是什么,以便“后退”按钮的功能就像在多页网站上一样。它会涉及实现我自己的查询堆栈吗?什么是最佳选择。
非常感谢。网址是here如果您想看到它的实际效果。
最佳答案
看看 History.js 库,处理现代浏览器并为旧的 HTML4 浏览器提供回退
https://github.com/browserstate/history.js/
在您的事件处理程序中 $(".mLink").click(function(){...
每当你触发滚动时,你可以添加这样的东西
case "mL0":
$("html, body").stop().animate({ scrollTop: 0}, 1000, 'easeInOutExpo');
History.pushState(null, null, "?home");
break;
case "mL1":
$("html, body").stop().animate({ scrollTop: ($('#filter').offset().top-72) }, 1000, 'easeInOutExpo');
History.pushState(null, null, "?portfolio");
break;
...
漂亮的投资组合网站,顺便说一句。
关于php - 单页网站的后退按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17159853/