HTML5 historyState pushState、replaceState】的更多相关文章

DOM中的window对象通过window.history方法提供了对浏览器历史记录的读取,让你可以在用户的访问记录中前进和后退. 从HTML5开始,我们可以开始操作这个历史记录堆栈. 1.History 使用back(),forward(),和go()方法可以在用户的历史记录中前进和后退 前进和后退 后退: window.history.back(); 这个方法会像用户点击了浏览器工具栏上的返回键一样. 同样的,也可以用以下方法产生用户前进行为: window.history.forward(…
使用Ajax可以异步获取数据,可以更高效地渲染页面. 但也存在这一些问题: 再刷新页面,页面就会变成初始的状态 浏览器的前进后退功能无效 对搜索引擎的爬虫抓取不友好 1. 早前会使用浏览器的 hash锚点 来解决 不同的hash标记着页面不同的部分,能修正页面刷新数据不正确的问题 再通过onhashchange事件监听hash锚点的变化,手动进行前进后退操作,浏览器支持度 Chrome FireFox IE Opera Safari 5.0 3.6(1.9.2) 8.0 10.6 5.0 2.…
DOM中的window对象通过window.history方法提供了对浏览器历史记录的读取,让你可以在用户的访问记录中前进和后退. 从HTML5开始,我们可以开始操作这个历史记录堆栈. 1.History 使用back(),forward(),和go()方法可以在用户的历史记录中前进和后退 前进和后退 后退: window.history.back(); 这个方法会像用户点击了浏览器工具栏上的返回键一样. 同样的,也可以用以下方法产生用户前进行为: window.history.forward(…
http://blog.csdn.net/tianyitianyi1/article/details/7426606 https://developer.mozilla.org/zh-CN/docs/Web/Events/popstate DOM中的window对象通过window.history方法提供了对浏览器历史记录的读取,让你可以在用户的访问记录中前进和后退. 从HTML5开始,我们可以开始操作这个历史记录堆栈. 1.History 使用back(),forward(),和go()方法可…
一.认识window.history window.history表示window对象的历史记录,是由用户主动产生,并且接受javascript脚本控制的全局对象.window对象通过history对象提供对览器历史记录的访问能力.它暴露了一些非常有用的方法和属性,让你在历史记录中自由前进和后退. 1.历史记录的前进和后退 在历史记录中后退,可以这么做: window.history.back(); 这就像用户点击浏览器的后退按钮一样. 类似的,你可以前进,就像在浏览器中点击前进按钮,像这样:…
说在前面 什么是PJAX呢? 站在应用角度的就是既实现了页面无刷新的效果,同时也产生了浏览器的前进和后退,而且url也会变化. 也不是什么新鲜技术,主要是AJAX+html5 pushState和replaceState.   HTML5 为history提供了pushState和replaceState用来在浏览历史记录中添加和修改记录. PJAX是在群里看到朋友在聊,孤陋寡闻还没听过这个,平时也没注意观察.附图Github实现了这个效果,当你切换标签时页面局部刷新,浏览URL也会变化. AJ…
一.本文就是个实例展示 三点: 我就TM想找个例子,知道如何个使用,使用语法什么的滚粗 跟搜索引擎搞基 自己备忘 精力总是有限的,昨天一冲动,在上海浦东外环之外订了个90米的房子,要借钱筹首付.贷款和领证什么的.HTML5 history相关知识点啪啦啪啦讲起来也是一条又臭又长的裹脚布,精气神实在不够用,这里,直接一个实例. 二.ajax载入与浏览器历史的前进与后退 众所周知,Ajax可以实现页面的无刷新操作——优点:但是,也会造成另外的问题,无法前进与后退!曾几何时,Gmail似乎借助ifra…
1,首先我面临一个需求,页面回退时需要知道来之前的页面状态.很简单,回退时在url里赋参数即可.问题是在ipad上,回退按钮是安卓那边的,我控制不了.只好采用js无刷新修改url历史记录,来告诉服务器我回去时要给我保持神秘状态. 先上代码,再解释这两个api. var url=window.location.href; var length=url.length; newur=url+"****"; history.replaceState(null, "",new…
早些时候在博客园参阅了不少资料,然后决定入驻博客园分享自己的开发心得,最近准备转方向筹备着辞职交接工作,所以有点忙碌,搁置了一个月才匆匆写下这么一篇随笔,希望能给大家带来一点帮助吧,资料和学识有限,如有不正确的地方敬请指出,万分感谢. 效果: 众所周知:ajax可以实现页面的局部刷新,可以做到非常奈斯的数据加载效果,给用户带来非常良好的体验,但是ajax的除了会曝露一些不太安全的服务器信息之外,最蛋疼的就是不能在浏览器的历史会话中保留记录.就是当你点开一个页面,ajax各种数据加载各种欢乐啊,例…
最近在用vue的时候突然想到一个问题 首先,我们知道vue实现的单页应用中一般不会去刷新页面,因为刷新之后页面中的vuex数据就不见了. 其次,我们也知道一般情况下,url变更的时候,比如指定location.href.history.push.replace等,页面就会刷新. 那么问题来了,vue页面的页面跳转时怎么实现的?没刷新页面么?没刷新页面,又要改变url,加载新内容怎么做的? 去翻了一下vue-router的源码,找到这样一段 export class HTML5History ex…
一.简介 HTML5引入了 history.pushState()和 history.replaceState()方法,它们分别可以添加和修改历史记录条目.这些方法通常与window.onpopstate配合使用. 二.pushState() 方法的例子 假设在 http://mozilla.org/foo.html 中执行了以下 JavaScript 代码: var stateObj = { foo: "bar" }; history.pushState(stateObj, &quo…
hash 要点: 1.不会向后台发请求:#是用来指导浏览器动作的,对服务器端完全无用. 2.用来跳转到页面的指定位置:   为网页位置指定标识符,有两个方法.一是使用锚点,比如<a name="print"></a>,二是使用id属性,比如<div id="print" >. btn.onclick = function(){ window.location.hash = 'contDEF'; } //HTML中 <div…
history.pushState 和 history.replaceState 可以在不刷新当前页面的情况下更改URL,但是这样就无法获取通过AJAX得到的新页面的内容了.虽然各种HTML5文档说 window.onpopstate 事件可以拦截 pushState 的消息,但在实际的测试中, onpopstate 根本没有任何作用,无法拦截 pushState 的消息. 经过Google一番,才找到了正确获取 pushState 事件的代码https://stackoverflow.com/…
pushState和replaceState是H5的API中新添加的两个方法.通过window.history方法来对浏览器历史记录的读写. pushState和replaceState 在 HTML 文件中, history.pushState() 方法向浏览器历史添加了一个状态. pushState() 带有三个参数:一个状态对象,一个标题(现在被忽略了),以及一个可选的URL地址. state object — 状态对象是一个由 pushState()方法创建的.与历史纪录相关的JS对象.…
HTML5中history提供的pushState, replaceState这两个API.它们提供了操作浏览器历史栈的方法. pushState能够在不加载页面的情况下改变浏览器的URL.这个方法接受三个参数: 状态对象,新状态的标题和可选的相对URL. history.pushState(data, null, '#/page=1'); pushState接收3个参数,第一个参数为一个obj,表示浏览器的state属性: 第二个参数是document.title的值,一般设定为`null`:…
深入理解HTML5:语义.标准与样式(勇猛精进早登大师殿堂创最优品质交互) [美]布拉德福(Bradford,A.) [美]海涅(Haine,P.)著 高京译 ISBN 978-7-121-20552-1 2013年6月出版 定价:59.00元 280页 16开 编辑推荐 本书讲解循序渐进,包括详细的基础概念和最佳实践.然后覆盖了核心HTML5技术,带你学习多媒体.交互性和改进的语义.每一章都以简单的内容开始,之后进入逐步复杂的示例. 在本书中,你会学习到: •用新的语义标签改善代码 •不用插件…
人人网首页拖拽上传详解(HTML5 Drag&Drop.FileReader API.formdata) 2011年12月11日 | 彬Go 上一篇:给力的 Google HTML5 训练营(HTML5 Drag&Drop 拖拽.FileReader实例教程) « 下一篇:   早在公元2011年6月3日傍晚,人人网推出了一个很装B且完全无视IE浏览器的功能——拖拽上床.哦,Sorry, 是拖拽上传.到现在,这个功能已经上线了整整半年,这篇文章也足足拖延了半年才分享给大家,实在是对不住了,…
<深入理解HTML5:语义.标准与样式> 基本信息 作者: (美)布拉德福(Bradford,A.) 海涅(Haine,P.) 译者: 高京 出版社:电子工业出版社 ISBN:9787121205521 上架时间:2013-6-22 出版日期:2013 年6月 开本:16开 页码:280 版次:1-1 所属分类:计算机 > 软件与程序设计 > 网络编程 > HTML 更多关于 >>><深入理解HTML5:语义.标准与样式> 内容简介 计算机书籍…
HTML5向IOS.Android传参: html给native传参需要注意三点: 1.判断终端设备,一般我们都是双系统开发,android和ios语言又不一样:我们需要用不同的方法给他们传递参数: 2.注册的方法名(也就是下面代码中的“methodsName”):这个相当于一个定义好的Token: 3.定义好参数:html5只能传一个参数,如果需要多个参数就需要native用字典或者json组装: //测试用户终端 var u = navigator.userAgent; var isAndr…
抽空研究了下这两个新方法,确实可以解决很多问题 1.使用pushState()方法 可以控制浏览器自带的返回按钮: 有时候我们想让用户点击浏览器返回按钮时,不返回,或执行其他操作,这时,就用到history.pushState()方法 讲解: history.pushState(data,title,url) //每执行一次都会增加一条历史记录,浏览器在返回时,就不会返回前一个页面了, data:要设置的history.state的值,可以是任意类型的值,可根据此值进行判断执行想要的操作. ti…
使用此方法浏览器前进后退仍然可查看对应内容 设置值 history.pushState({}, "页面标题", "xxx.html"); history.replaceState(null, "页面标题", "xxx.html"); 比如设置 history.pushState({},"","#2"); 获取location.hash == "2" 某种意义上,调用p…
figure.figcaption,这俩个标签都是定义图文的 常常用到一种图片列表,图片+标题或者图片+标题+简单描述.以前的常规写法: <li> <img src="test.jpg" /><p>title</P></li> 而在html5中有了新标签更能语义化的定义出这中图片列表,那就是figure标签. figure标签规定独立的流内容(图像.图表.照片.代码).figure 元素的内容应该与主内容相关,但如果被删除,则…
最近研究pushState,看了网上的文章还是不怎么会用,于是自己摸索着理解使用,终于实现局部刷新同时前进后退. 首先说说pushState(),这个函数将当前的url等信息加入history堆栈中: 当点击浏览器的前进后退按钮时,会触发popstate事件,所以可以在onpopstate的时候使用ajax实现局部刷新前进后退. 我的方法(用jQuery): 1.定义两个函数 function ajaxLoad(){ //里面加载ajax }; function setState(){ var…
总是遇到h5新标签的笔试题目,就查阅了资料来总结一下: 1.form相关: (1)form属性:在HTML5中表单元素可放在表单之外,通过给该元素添加form属性来指向目标表单(form属性值设为目标表单id)即可. (2)formaction属性:HTML5给提交按钮(如button.submit.image等)增加了formaction属性,以便提交到不同的服务器地址. <input formaction="new.html" type="submit"…
header header元素是一种具有引导和导航作用的辅助元素.通常,header元素可以包含一个区块的标题(如h1至h6,或者hgroup元素标签),但也可以包含其他内容,例如数据表格.搜索表单或相关的logo图片. 我们可以使用该元素来写整个页面的标题部分: <header> <h1>The most important heading on this page</h1> </header> 同一个页面中,每一个内容区块都可以有自己的<heade…
history.pushState(state, title, url) 将当前URL和history.state加入到history中,并用新的state和URL替换当前.不会造成页面刷新. state:与要跳转到的URL对应的状态信息. title:可以不传 url:要跳转到的URL地址,不能跨域. history.replaceState(state, title, url) 用新的state和URL替换当前.不会造成页面刷新. state:与要跳转到的URL对应的状态信息. title:…
语义元素是拥有语义的元素. 什么是语义元素? 语义元素清楚地向浏览器和开发者描述其意义. 非语义元素的例子:<div> 和 <span> - 无法提供关于其内容的信息. 语义元素的例子:<form>.<table> 以及 <img> - 清晰地定义其内容. 浏览器支持 Internet Explorer Firefox Opera Google Chrome Safari 所有现代浏览器均支持 HTML5 语义元素. 此外,您可以"帮助…
图片.音乐和视频 一.图片 1.属性 属性 说明 alt 规定图像的替代文本. src 规定显示图像的 URL align 规定如何根据周围的文本来排列图像. border 定义图像周围的边框. height 定义图像的高度. hspace 定义图像左侧和右侧的空白. ismap 将图像定义为服务器端图像映射. longdesc 指向包含长的图像描述文档的 URL. usemap 将图像定义为客户器端图像映射. vspace 定义图像顶部和底部的空白. width 设置图像的宽度. 2.例 <i…
音频&视频 本篇为本人的学习笔记. 在Html5之前,浏览器对于视频和音频的处理并没有一个标准.因此在网页中看到的视频,都是通过第三插件的方式嵌入的,如:QuickTime.RealPlayer.Flash.浏览器自行整合了这些插件,用户意识不到他们的存在.时至今日,flash已停止更新濒临淘汰,许多浏览器已放弃整合这类插件,html5中的video.audio标签已大行其道. 补充资料 容器的概念 大多数人会认为视频文件就是 .avi .mp4,但事实上 avi和mp4仅仅是容器的格式,它只决…
HTML5[语法要点] 一.头部设置 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 <!--页面窗口自动调整到设备宽度,并禁止用户及缩放页面-->     <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0,maximum-scale=1.0, user-s…