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