我正在寻找一种更新状态栏中网址的方法。 我有一个图库,当您点击图库中的图片时,我希望图片ID显示在网址中,以便用户可以直接链接到图片..
我已经阅读过使用哈希等等。但据我所知,这“废墟”了历史。 如果我单击浏览器中的后退按钮,将显示上一张图像。
是否可以添加或更新URL参数,而不会破坏历史记录?
提前致谢
答案 0 :(得分:3)
使用location.replace
替换当前位置:
将当前文档替换为提供的URL处的文档。与
assign()
方法的区别在于,使用replace()
后,当前页面将不会保存在会话历史记录中,这意味着用户将无法使用“后退”按钮导航到该页面。
答案 1 :(得分:1)
这样做就是这样,当切换到图像时,在网址中添加一个哈希值,例如:
location+='#image-'+image_id
您的位置将变为
http://example.org/images/#image-3
而不是最初的
http://example.org/images/
和onload,检查location.hash
是否为空,并与^image-(\d+)$
(正则表达式模式)匹配,如果匹配,请执行您通常使用的操作如果用户点击ID为(\d+)
的图片,则会完成。
要保留历史记录,请使用reallysimplehistory。