要在不重新加载页面的情况下修改 URL,我们可以使用:
window.history.pushState('page2', 'Title', '/page2.php');
但是如果我尝试使用 <a>
元素:
<a onClick='my_function()' href='/page2.php'> Click Here </a>
<script>
function my_fnuction(){
window.history.pushState('page2', 'Title', '/page2.php');
}
</script>
它不起作用,那么我该如何使用 <a>
元素和window.history.pushState()
一起?
与twitter和Facebook一样,用户可以点击右键在新窗口中打开URL,并直接点击获取页面和更改URL而无需重新加载
最佳答案
在 onclick 中,您有
my_function
,其中实际函数名称是my_fnuction
。您需要取消默认行为,如果您的 onclick 函数返回 false,则默认浏览器行为将被取消。
代码:
<a onClick='return my_function()' href='/page2.php'> Click Here </a>
<script>
function my_function(){
window.history.pushState('page2', 'Title', '/page2.php');
return false;
}
</script>
关于javascript - 更改 URL,无需使用 <a href =""> 重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34671808/