当我在带有预览图像的当前页面的弹出窗口中打开大图像时,我想更改URL。我不想使用window.location.hash功能,因为我想通过PHP操作新的url然后我发现这个复杂的使用hash。所以,我发现我可以使用HTML5功能来实现这一点。
window.history.pushState(“object or string”, “Title”, “/new-url”);
我的问题是:当我关闭大图片时,我想从页面中删除这个新网址。如何在不使用
的情况下完成此操作window.history.back();
感谢。
答案 0 :(得分:1)
关闭图像不类似于在浏览器中按后退按钮。它类似于跟随另一个链接回原始页面。所以没有必要回去。再次pushState
,返回原始网址。
另一方面,如果的人点击浏览器中的后退按钮,您也希望将它们带回原始页面。所以你需要监听popstate
事件,当它被触发时,运行一个将删除弹出图像的函数:
window.addEventListener("popstate", function(e) {
hideimage();
}