什么是Ajax,什么是Pjax,两者的关系与区别
有一说一,我也不是很清楚,但是我就知道无缝刷新网页
比如传统上本站首页链接是:https://ecy.ee/index.php,首先在首页你能看见我的博文,于是你点进去了,在传统的方式你的浏览器先会变白,然后再以刷新的样式进入本站。而无缝刷新则是只有部分地方得到刷新,大体框架不变。(我个人认为,说话好low)
其实我的意思就是下面这张图
1,2指的是传统意义上的页面切换,实际上就是刷新了一整个页面,js,css等等全都被重新加载,所以会先有我说的全变白(不一定)然后才有内容显示出来
3,4指的是通过pjax技术达到部分页面刷新,整体风格不变(js,css等不会重新加载),实现看起来是无缝刷新
什么是Ajax
ajax技术是用来后台与服务器进行少量数据交换,也就不用刷新页面就能看到数据内容,但是ajax有几大问题 1、搜索引擎不识别js代码,也就是无法知道ajax交互之后内容 2、如js做页面的内容的显示,游览器地址不会切换 3、因为游览器地址不能切换,也不支持后退
什么是Piax
Pjax=pushState + Ajax 主要的功能是解决ajax上面的几个问题,只是刷新部分页面,切换地址,游览器能记录历史地址,不用重新加载公共的js、css等公共资源,提升用户的体验
使用 pjax 的好处:由于搜索引擎的蜘蛛不会执行 javascript,所以如果你的页面是 ajax 方式加载将不会被引擎收录。
您阅读这篇文章共花了: