0

我正在开发一个网站,其中主要内容根据选定的菜单项由 jquery ajax 加载。

在选择任何菜单项时,url 会根据以下模式更改:

http://host/domain/index.php?pageid=page

这里的页面是指我想使用 ajax 加载到主要内容中的页面。

现在在这种情况下,如果用户单击浏览器的后退按钮,我想重新加载上一页。

谁能帮助我,我怎么能做到这一点?

4

1 回答 1

0

如果您不更改网址,那恐怕是不可能的。

假设您最好尝试使用window.historywhich 在用户单击返回按钮时提供 onpopstate 事件。但是您需要在浏览器中使用history.pushState/history.replaceState函数修改 url。可能,您可以将相同的 url 添加到历史记录中,因此它不会在视觉上发生变化。然后从您的自定义历史数组中获取先前的 URL。但不确定如果您放置相同的网址,popstate 是否会起作用pushState

但这仅适用于现代浏览器。为了让它在所有浏览器中都能正常工作,你最好使用一些历史插件(例如this),它也可以使用主题标签来处理 IE

于 2013-05-16T12:54:33.017 回答