如何更改地址栏网址而不重定向用户(不使用历史记录API?)

时间:2016-04-13 14:50:55

标签: javascript html html5 html5-history

我知道这是一个非常常见的问题。但我找不到我正在寻找的答案。

我需要像Groupon.com那样实现非常类似的行为。例如,当您访问https://www.groupon.com/goods/all时。在左侧,您会看到“兴趣”过滤小部件,当您选择一个或多个选项时,地址栏上的网页网址将更改为https://www.groupon.com/goods/all?interest=good-for-gifting

首先,我认为他们使用的是历史记录API ,但他们没有。因为当我检查history.length以查看它是否增加时,它总是返回相同的值。

任何人都知道如何做到这一点?

2 个答案:

答案 0 :(得分:1)

这可能是因为他们使用了replaceState()方法,该方法不会在历史记录中添加任何条目,而是替换当前条目

https://developer.mozilla.org/en-US/docs/Web/API/History_API

答案 1 :(得分:-1)

为什么不在htaccess或配置文件中尝试URL重写。你可以参考下面的文章。 http://webrewrite.com/url-rewriting-htaccess/

希望这很有用!