我正在为一个项目建立一系列基本手风琴。
我们希望他们拥有静态的可链接页面。所以我们也为每个开放状态创建了不同的页面。
例如,
/ whoweare是主要的滑块。
但我们有一个子滑块位于 / whoweare / whatwedo
我要做的是,当用户点击/ whoweare上的标题时,滑块会打开,并且网址栏会更新为/ whoweare / whatwedo,但是没有实际的重定向。网址应该只是改变,仅此而已。
我尝试过使用
window.location.replace($(this).attr('href'));
return false;
但这似乎没有完成我想要的,它仍然会重新加载到新页面。
还有其他建议吗?
答案 0 :(得分:11)
您无法在不重定向的情况下更改网址 - 这可能是网络钓鱼的噩梦(例如,在网络钓鱼网站上将网址更改为银行网址)。
您只能操纵文档哈希值,即http://domain.com/#identifier - 这就是Google,Facebook等为AJAX网站提供浏览器历史记录支持的方式。
#352343 Changing browser’s address bar without refreshing的完全重复。
更新:HTML5现在允许pushState
,但仅限于同一个域内。
答案 1 :(得分:0)