我正在使用 HTML5 jQuery 捆绑的History.js插件。它工作正常,但我需要能够使用类似的链接(没有 History.js 也能正常工作)
http://website/url#popup=/url/some/more/params/
暂时,如果我尝试使用它,我的哈希页面将在没有哈希的情况下重新加载——我刚刚在只有 History.js 插件的环境中测试了它(以确保这是一个 History.js 问题)。
http://website/popup=/url/some/more/params/
但是,如果我尝试不带“/”符号的哈希,一切都会好起来的,location.hash 将保持不变,不会重新加载页面:
http://website/#popup=url
问题是我想在#popup 参数中使用本机网址。易于处理和显示这种方式链接对用户来说一目了然,打开弹出窗口后每个人都可以分享链接。
是否可以禁用此类 location.hash 更改和重定向?我真的不认为使用带有特殊分隔符的链接是个好主意:
http://website/#popup=url:param:values
PS 在将其添加到 location.hash 之前,我尝试将 encodeURIComponent() 应用于弹出 url,以下 url 也会删除哈希并进行重定向:
http://website/#popup%3D%2Ftest%2Furl