如何检测后退按钮单击

时间:2015-02-24 23:06:11

标签: javascript php jquery html angularjs

我正在开发一个HTML网站,我在index.html页面中有4个div。

之前单击用于展开它的div部分,另一部分的宽度变小。

然后客户端要求确保在我们点击任何div时更改了URL。

假设我们点击了名为test的div。页面url应该成为/test.html,没有页面重新加载。我已使用历史记录API实现了此功能。

现在,当我点击test div并且网址变为/test.html时,如果我点击链接,则会重定向到另一个网页。

在这个页面中,如果我点击浏览器后退按钮,那么它会将我带到不存在的/test.html,我们会收到404错误。

我尝试制作一个名为test.html的重定向页面,该页面会重定向回index.html页面,但是这样做会眨眼。

我想问的是这个问题是否有解决方案?

1 个答案:

答案 0 :(得分:0)

如果您在网络服务器上启用了mod_rewrite,则可以将其设置为网址重写规则。

RewriteEngine On
RewriteRule ^test.html originalfile.html [NC]

当用户按下后退按钮并导航到test.html时,这会将test.html重定向到原始html文件,同时浏览器地址栏仍会显示test.html 。从这里开始,您应该能够在javascript中检测地址并显示相应的div

(请注意,您可能需要根据服务器的配置方式修改上述重写规则。有关创建重写规则的更多信息,请see this link