我想知道如何在没有重定向的情况下更改URL参数。例如,用户单击使用分页实现的“第2页”,通过ajax检索数据,但我想向用户提供URL,以便他可以将具有相同结果的page2发送给朋友或其他任何人。 / p>
搜索网络和stackoverflow每个人都声明这是不可能的,只能更改哈希值(parent.location.hash = "whatever value";
)。
但是如何在Airbnb
完成?当我搜索城市时,结果页面的URL是:
https://www.airbnb.at/s/london
当我点击分页的“第2页”时,数据通过Ajax加载,新的URL就是这个(没有重定向):
https://www.airbnb.at/s/london?page=2
这是怎么做到的?
答案 0 :(得分:1)
可能来自History API的pushState
。
您可以在 History API 或 Manipulating the browser history
答案 1 :(得分:0)
我认为这会对你有所帮助,试试这个
<a href="link1.php" rel="tab" class="link">link1</a> |
<a href="link2.php" rel="tab" class="link">link2</a> |
<a href="link3.php" rel="tab" class="link">link3</a>
<script>
$(function(){
$("a.link").on("click",function(e){
e.preventDefault();// or return false;
window.history.pushState({path:this.href},'',this.href);
});
});
</script>