window.history.pushState to localhost/MySite

window.history.pushState to localhost/MySite

本文关键字:MySite localhost to history pushState window      更新时间:2023-09-26

我正在使用pushState更改为URL以在单击我网站上的图像时操作浏览器地址栏。

开发环境中使用时,如何将其更改回主页。例如:我的地址栏有以下网址:http://localhost/MySite单击图片后,我将地址栏更改为:http://localhost/MySite/pic/123与窗口.历史.推送状态。

问题是 - 在开发环境中,我无法使用

window.history.pushState(obj, title , '/');

因为斜杠('/')把我带到 http://localhost/

我试过"../",但它仍然不起作用和 window.history.back() 都不是。

有什么建议吗?

使用 location.pathname 和正则表达式或其他东西来获取基本路径

var viewingImagePattern = /'/pic'/'d+$/;
var rootPath = location.pathname.replace(viewingImagePattern, "/");
window.history.pushState(obj, title , rootPath);