怎么实现换页不刷新?

2014-10-26 19:42:09 +08:00
 Imivan
如题,不用ajax。
2808 次点击
所在节点    问与答
17 条回复
icedx
2014-10-26 19:47:58 +08:00
框架
Imivan
2014-10-26 19:50:06 +08:00
@icedx 哪个框架,请明示。
imn1
2014-10-26 19:51:36 +08:00
用div做分页,切换显示就是了
klam
2014-10-26 19:53:52 +08:00
把数据一次性全部载入,然后保存在变量或dom里..
avrillavigne
2014-10-26 19:59:29 +08:00
@Imivan iframe 笑出声
Imivan
2014-10-26 20:03:09 +08:00
@avrillavigne
@klam
谢谢了,大致就是这两种了。
icedx
2014-10-26 20:24:31 +08:00
@Imivan iframe
kmvan
2014-10-26 20:30:27 +08:00
用Jsonp
aliuwr
2014-10-26 21:12:20 +08:00
你需要的应该是 HTML5 History API:
https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history#Adding_and_modifying_history_entries

Demo:
http://html5demos.com/history

由于是 HTML5 里的标准, 对于古董浏览器, 可以使用 location.hash 作为替代品.
loading
2014-10-26 21:14:15 +08:00
不用ajax,用iframe,是无刷新换页,自欺欺人!


@aliuwr 您说的是 pjax ?
Imivan
2014-10-26 21:15:09 +08:00
@aliuwr 这个也可以,太谢谢啦。
shsf4
2014-10-26 21:19:03 +08:00
试试angular.js的路由功能~~
aliuwr
2014-10-26 21:28:15 +08:00
@loading 网易云音乐就是使用的 iframe,比较失望。
不过不会有兼容问题,已有的系统也不需要做什么调整,是比较省力的方案。

重点不是服务器返回内容的格式,而是 URL 的维护。
good
2014-10-27 11:47:09 +08:00
@aliuwr 这个才是正解
Imivan
2014-10-29 06:37:50 +08:00
@aliuwr 可以给个window.location.hash源码和演示么?w3school没有,网上的资料也很少。前端渣渣,谢谢了。
aliuwr
2014-10-29 09:53:28 +08:00
@Imivan 可以参考或使用该 JS 库,
https://github.com/browserstate/history.js/
Imivan
2014-10-29 10:13:26 +08:00
@aliuwr 好吧,我早该想到github的不刷新。谢谢啦

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/141646

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX