我有问题,我的选项卡带有pushstate:
history.pushState(null, null, '#/' + $(this).attr('href').substring(1));
当我想使用以下方式更改此pushstate时:
function updateUrl() {
history.pushState(null, null, `${location.href}/?page=` + this.page);
}
当我单击分页按钮时。我得到这样的链接:http://example.com/foo/bar/#revs/?page=1/?page=2/?page3
<button onclick="updateUrl(1)">1</button>
<button onclick="updateUrl(2)">2</button>
但是我只需要更改参数page
。我该如何解决?
答案 0 :(得分:0)
使用location.href
只会添加当前链接。
使用以下链接构造链接:
location.origin + location.pathname + location.hash.split('/')[0] + '/?page=' + this.page
详细了解location对象。
您始终可以在浏览器控制台中访问location
对象,以了解其结构。