HTML:更改URL而不重新加载页面?

时间:2011-04-02 20:24:06

标签: javascript html html5 pushstate

点击此链接:

http://google.blogspot.com/view/timeslide

然后点击帖子,你可以看到URL正在改变,但没有#或类似的东西,它会像页面正常加载一样改变,但内容的改变就像用AJAX构建一样。

Chrome 10使用最新的稳定版本会发生这种情况,但对于Firefox 3.6,它使用旧方式和哈希:)

这怎么可能,这是一个新的HTML5功能还是什么?

1 个答案:

答案 0 :(得分:11)

pushState

  

window . history . pushState(data, title [, url ] )

     

将给定数据推送到具有给定标题的会话历史记录,如果提供,则将给定的URL ...

     

用户代理必须运行以下步骤...

     

current entry之后的会话历史记录中添加状态对象条目,其中克隆数据作为状态对象,给定标题作为标题,并且,如果存在第三个参数,则此算法中先前找到的absolute URL为条目的URL

     

current entry更新为此新添加的条目...