作者:哒Dayling玲 | 来源:互联网 | 2020-08-30 08:53
HTML5historyAPI介绍history是个全局变量,即window.history属性和方法如下:length:历史堆栈中的记录数。back():返回上一页。foward():前进到下一页。go([delta]):delta是数字,如果为0或为空则刷新本页,如果正数则前进[delta]页,如负数则后退[delta]页。HTML5添加了
HTML5 history API介绍history是个全局变量,即window.history
属性和方法如下:
length:历史堆栈中的记录数。
back(): 返回上一页。
foward(): 前进到下一页。
go([delta]): delta是数字,如果为0或为空则刷新本页,如果正数则前进[delta]页,如负数则后退[delta]页。
HTML5添加了以下两个方法:
pushState(data, title, [,url]):在历史堆栈顶部插入一条记录。
data为一个对象或null,会在window的popstate事件(window.onpopstate)时,作为state参数传递过去。
title为页面的标题,当前所有浏览器都忽略这个参数。
url 为页面url,不写则为当前页。
replaceState(data, title, [,url]):更改当前页面的历史记录。这种更改不会去访问该URL。
replaceState()的URL参数必须和当前页的协议(如HTTP、HTTPS)和域名完全相同(使用不同的子域都不行)
目前只有Safari 5.0+、Chrome 8.0+、Firefox 4.0+和iOS 4.2.1+支持。如果想兼容老浏览器的话,可以试试History.js,而且它还修正了一些bug。
pushState 与 replaceState 使用:
page 1
page 2
page 3
page 4
window.onpopstate方法:
window.Onpopstate= function(event){
alert(event.state);
}
本篇文章关于HTML5 history API 的介绍,更多相关内容请关注 第一PHP社区 。