PushState是HTML5中新增的History API之一,可以在不刷新页面的情况下改变URL。
使用PushState可以通过以下步骤来改变URL:
获取当前页面的URL:可以使用window.location.href来获取当前页面的URL。
使用PushState方法改变URL:可以使用history.pushState方法来改变URL,该方法接受三个参数,分别是state对象(表示新的状态)、标题(目前大多浏览器忽略此参数)、URL(表示新的URL)。例如:
history.pushState({page: 1}, "Title", "newpage.html");
需要注意的是,虽然PushState可以改变URL但不刷新页面,但是如果用户手动刷新页面或者通过浏览器的前进、后退按钮导航,页面还是会刷新。因此,在使用PushState时,需要考虑如何处理页面状态的保持和恢复。