我正在为一个项目建立一系列基本手风琴。

我们希望他们拥有静态的可链接页面。所以我们也为每个开放状态创建了不同的页面。

例如,

/ whoweare是主要的滑块。

但我们有一个子滑块位于 / whoweare / whatwedo

我希望做的是,当用户点击/ whoweare上的标题时,滑块会打开,并且网址栏会更新为/ whoweare / whatwedo,但是没有实际的重定向。网址应该只是改变,仅此而已。

我尝试过使用

window.location.replace($(this).attr('href'));
return false;

但这似乎没有完成我想要的,它仍然会重新加载到新页面。

还有其他建议吗?

有帮助吗?

解决方案

您无法在不重定向的情况下更改网址 - 这可能是网络钓鱼的噩梦(例如,在网络钓鱼网站上将网址更改为银行网址)。

您只能操纵文档哈希 - 即 http://domain.com/#identifier - 这就是Google,Facebook等为AJAX网站提供浏览器历史记录支持的方式。

#352343完全重复更改浏览器的地址栏而不刷新

更新:HTML5现在允许 pushState ,但只能在同一个域内。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top