【发布时间】:2013-06-04 21:19:52
【问题描述】:
我正在开发一个使用 AJAX 加载和一些 jQuery 动画的网站。
使用 JavaScript,我从动态生成的指向基于 PHP 的页面的链接中获取 href,然后将该 href 添加到 URL(在不可避免的 #/ 之后)。
到目前为止一切顺利,除非用户将页面添加为书签并尝试访问它,否则该用户将到达主页,而不是他/她希望访问的页面。
所以,当一个页面被直接访问时,不是通过点击网站的内部链接,我想从 url 中删除 #/,而是保留它后面的所有内容,这样被加书签的 URL 是这样的:
http://www.mysite.com/#/somepage
被重写为:
http://www.mysite.com/somepage
那么,在正确的页面 (http://www.mysite.com/somepage) 完成加载后,我想将 #/ 粘贴回 URL (http://www.mysite.com/#/somepage) 中的先前位置,无需重新加载页面(其中,多亏了我正在使用的聪明的 sn-p,它将确保导航的其余部分按应有的方式工作。)
所以:
- 在页面加载之前,检查 URL,如果它有
#/,请将其删除。 - 加载页面位于无哈希 url
- 使用
#/重新显示网址,无需重新加载页面。
它甚至可行吗?如果是的话,我将不胜感激。
【问题讨论】:
-
你看过History.js吗?
标签: javascript url