从深层链接的开头删除 /#/?
Posted
技术标签:
【中文标题】从深层链接的开头删除 /#/?【英文标题】:Remove /#/ from beginning of deep link? 【发布时间】:2012-02-21 16:19:19 【问题描述】:我正在使用jQuery Address plugin 进行一些动态地址更改。到目前为止,我已经将地址栏更改为我的页面名称,但它在开头添加了/#/
。我查看了文档,但不知道如何删除它。
我的代码附加到点击事件,如下所示:
thisurl = "/portfolio";
$.address.path(thisurl);
提前致谢。
【问题讨论】:
【参考方案1】:如果你想重定向到某个地方,你应该使用
thisurl = "/portfolio";
$(document).location = thisurl;
但如果你只想为你的 javascript 应用设置一个占位符,我认为没有 /#/
是不行的
【讨论】:
【参考方案2】:查看http://keithpitt.com/post/2826790132/jquery-address-ruby-on-rails-and-will-paginate! 通过利用状态变化,你可以避免 hash-bangs。
【讨论】:
【参考方案3】:我决定使用 history.js 到 this 。
使用History.pushState("", "Title", newstate);
更改地址栏,History.Adapter.bind(window, 'statechange', function () );
用于后退和前进按钮事件。
【讨论】:
通过使用jQuery Address,您有一个跨浏览器的解决方案,带有回退。 @Sujay 与 history.js 相同。 github.com/balupton/History.js 。你在想 jquery.history 吗? 我以为您正在寻找路由解决方案。如果我错了,请纠正我。 @Sujay 一旦我对历史 API 有了更多了解,我最终从头开始编写自己的版本。 那是 gr8 @Frank 。请在@github 或其他地方与我们分享。以上是关于从深层链接的开头删除 /#/?的主要内容,如果未能解决你的问题,请参考以下文章