架构师_程序员

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 278|回复: 3

[JavaScript] history.pushState 实现浏览器页面不刷新修改url链接

[复制链接]
跳转到指定楼层
楼主
发表于 2019-6-20 10:17:16
zu
  1. history.pushState(stateObject, title, url);
复制代码
1.状态对象(stateObject)--stateObject是一个JavaScript对象,通过pushState方法可以将stateObject内容传递到新页面中。

2.标题(title)--几乎没有浏览器支持该参数,但是传一个空字符串会比较安全。

3.地址(url)--新的历史记录条目的地址(可选,不指定的话则为文档当前URL);浏览器在调用pushState()方法后不会加载该地址;传入的URL与当前URL应该是同源的,否则,pushState()会抛出异常。

  1. history.pushState(null, null, location.href.split("?")[0] + "?type=" + jobTypes + "&city=" + _pageData.city + "&key=" + _pageData.key + "&index=" + _pageData.pageIndex);//塞入历史记录,并改变当前url
复制代码







上一篇:分享一款录制gif动图的超棒exe
下一篇:阿里云负载均衡slb之http重定向https的坑
帖子永久地址: 

架构师_程序员 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与架构师_程序员享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和架构师_程序员的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、架构师_程序员管理员和版主有权不事先通知发贴者而删除本文

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
沙发
发表于 2019-6-20 10:55:31
现在很多前端框架都用到了这种技术,点击菜单,url变了,并没有新的网络请求
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
板凳
 楼主| 发表于 2019-6-20 11:24:05
小渣渣 发表于 2019-6-20 10:55
现在很多前端框架都用到了这种技术,点击菜单,url变了,并没有新的网络请求 ...

那是不是 新的页面内容 都已经放到缓存里了
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
地板
发表于 2019-6-20 11:56:00
夏天 发表于 2019-6-20 11:24
那是不是 新的页面内容 都已经放到缓存里了

不是,是第一次请求的时候,把所有页面关键的内容已经下载下来了,然后,js也有路由的概念了,根据不同url,给你不同的内容。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

Mail To:help@itsvse.com

QQ|Archiver|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2019-9-19 01:41

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表