html中history的属性,HTML5中的History对象

c09ee20e804a91b99e99e426000e2141.png

HTML5标准之前

基本操作

1.forward(number) 加载histroy列表中的下一个URL

2.back(number) 加载histroy列表中的上一个URL

3.go(number) 根据当前所处的页面,加载 history 列表中的某个具体的页面。

例子:

前进(加载histroy列表中的下一个URL)

当下

后退(加载histroy列表中的上一个URL)

想去哪就去哪的go

function forward() {

//forward()相当于go(1)

window.history.forward();

}

function now() {

//forward()相当于go(0)

window.history.go(0);

}

function back() {

//forward()相当于go(-1)

window.history.back();

}

function go() {

window.history.go(10);

}

HTML5标准后

history.pushState()

新的状态信息就会被加入到history状态栈(列表),而浏览器地址栏也会变成新的相对URL。

var stateObj = { foo: "bar" };

window.history.pushState(stateObj, "page 2", "newly.html");

但是:浏览器不会刷新,这样也不会发送请求。

pushState 不会触发 onpopstate

这里需要与window.location.href='./newly.html'这个操作方法区分开。因为这个会刷新url,且发送请求。

history.replaceState()

更新当前历史记录条目的状态对象或URL。

var stateObj = { foo: "bar" };

window.history.replaceState(stateObj, "page 1", "app.html");

不同于window.location.replace(url)。浏览器不会刷新,这样也不会发送请求。

replaceState不会触发 onpopstate

图解:

7e79a586afd8fd3c4a911e93d270390a.png

onpopstate

onpopstate事件是用来监听URL发生变化的情况触发。

window.onpopstate = function(){

}

HTML5中的Blob对象的使用

HTML5中的Blob对象和MYSQL中的BLOB类型在概念上是有点区别的.MYSQL中的BLOB类型就只是个二进制数据容器.而HTML5中的Blob对象除了存放二进制数据外还可以设置这个数据的MIN ...

谈谈HTML5中的history.pushSate方法,弥补ajax导致浏览器前进后退无效的问题

移动端为了减少页面请求,有时候需要通过单页面做成多页面的效果,最近有这么个需求,表单填完后执行第一步,然后执行第二步,第二步执行完后再执行第三步,每一步都要保留之前的数据.这种情况用单页面实现再合适不 ...

HTML5中的Range对象的研究

一:Range对象的概念 Range对象代表页面上的一段连续区域,通过Range对象,可以获取或修改页面上的任何区域,可以通过如下创建一个空的Range对象,如下: var  range = docu ...

HTML5中的Range对象的研究(转载)

一:Range对象的概念 Range对象代表页面上的一段连续区域,通过Range对象,可以获取或修改页面上的任何区域,可以通过如下创建一个空的Range对象,如下: var  range = docu ...

JS中的history对象

window.history指向History对象,它表示当前窗口的浏览历史. History对象保存了当前窗口访问过的所有页面网址. history.back()//后退到前一个网址 等同于 his ...

html5中的FileReader对象

表单中有图片选项,选中图片文件之后要求可以预览.这个功能很多控件都封装好了,但是它们的底层都是FileReader对象. FileReader对象提供了丰富的功能,包括以二进制.以文本方式读取文件内容 ...

HTML5中的二进制大对象Blob(转)

HTML5中的Blob对象和MYSQL中的BLOB类型在概念上是有点区别的.MYSQL中的BLOB类型就只是个二进制数据容器.而HTML5中的Blob对象除了存放二进制数据外还可以设置这个数据的MIN ...

理解HTML5中Range对象

1.理解Range对象    重新来学习下HTML5中的Range对象和Selection对象,最近在维护富文本编辑器,感觉这方面的知识点很有用,所以趁着周末多学习下~  什么是Range对象? 在H ...

随机推荐

jquery-创建弹出框原理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值