我如何有一个JavaScript操作,它可能会对当前页面产生一些影响,但也会更改浏览器中的 URL,所以如果用户点击重新加载或书签,那么使用新的 URL?
如果后退按钮可以重新加载原始 URL,那也很好。
我正在尝试在 URL 中记录 JavaScript 状态。
在 HTML 5 中,使用history.pushState函数. 举个例子:
history.pushState
<script type="text/javascript"> var stateObj = { foo: "bar" }; function change_my_url() { history.pushState(stateObj, "page 2", "bar.html"); } var link = document.getElementById('click'); link.addEventListener('click', change_my_url, false); </script>
和一个href:
<a href="#" id='click'>Click to change url to bar.html</a>
如果要更改 URL 而不向后退按钮列表添加条目,请history.replaceState改用。
history.replaceState