京东WEB端"我的京东"是如何做到快速渲染的?
京东我的京东
模块在点击如图左侧蓝色部分导航时页面跳转几乎看不到空白和闪烁,能明显看出来改变的只有红色区域。
这类似于单页面局部刷新,但这的确是跳转链接,也加载文档了(如图),url也随之改变(这里不仅改变url的路径部分,连二级域名也改变了,这应该是在不同项目里?)。感觉有点神奇啊~
现在我们项目基于扩展和维护的考虑需要划分多个子模块(多个项目多个域名),类似京东这里关注的内容
、关注的活动
是分为两个项目来开发维护,怎样才能实现京东这样的快速渲染?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
浏览器的URL是可以自己改的啊.
看pushState() https://developer.mozilla.org...
这个效果参考https://github.com/defunkt/jq...
pjax = pushState + ajax
你确定?在chrome的rendering里勾选paint flashing后可以看到实际全部刷新了…
如果只是要不闪烁的效果,只需要把静态样式全部写入HTML,不要用js动态生成。js代码全部放在页面的底部,这样浏览器会根据标签顺序先显示出页面样式再去加载js
条件允许用后端模板也可以,因为后端模板本质上也是请求时填写好信息,返回完整的静态HTML页面