pjax是对ajax + pushState的封装,可以很方便的使用pushState技术
点击一个站内的链接的时候, 不是做页面跳转, 而是只是站内页面刷新,刷新页面的同时, 浏览器地址栏位上面的地址也是会更改, 用浏览器的回退功能也能够回退到上一个页面。
好处:
1、用户体验提升
2、减少带宽消耗和服务器消耗
....
官方文档:
https://github.com/defunkt/jquery-pjax
Demo(要在服务器中运行才能看到效果)
防止浏览器直接访问a[href]的链接,在onclick调用的方法中返回false;要想在前进后退时看到效果要重新加载链接,在popstate事件中添加请求
pjax1.html
<!DOCTYPE html>
<html>
<head>
<title></title>
<style type="text/css">
.select{color:red;}
</style>
<script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$('.pjax').bind('click',function(){
$('.select').removeClass('select');
$(this).addClass('select');
$.ajax({
type:'GET',
url:this.href,
success:function(data){
$('#container').html(data);
}
});
window.history.pushState({url:this.href},null,this.href);
return false;
});
window.addEventListener("popstate", function() {
$.ajax({
type:'GET',
url:location.href,
success:function(data){
$('#container').html(data);
}
});
});
})
</script>
</head>
<body>
<a href="pjax2.html" class="pjax">页面2</a>
<a href="pjax3.html" class="pjax">页面3</a>
<div id="container">页面1</div>
</body>
</html>
pjax2.html
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
页面2
</body>
</html>
pjax3.html
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
页面3
</body>
</html>
相关推荐
《WordPress与Kratos Pjax 0.4.4:实现高效网页加载技术解析》 在互联网技术日新月异的今天,网站性能优化已经成为提升用户体验的关键因素之一。WordPress作为全球最受欢迎的内容管理系统(CMS),其丰富的插件生态...
**Pjax(Push State + AJAX)技术在ASP.NET中的应用** Pjax,全称为Push State + AJAX,是一种优化网页加载速度的技术,它结合了浏览器的History API(HTML5中的pushState和replaceState方法)和AJAX(异步...
2. **事件处理**:Pjax库会触发一系列事件,如`pjax:start`、`pjax:end`、`pjax:success`和`pjax:error`,以便在Pjax操作的不同阶段进行相应的处理,如显示加载指示器、处理错误等。 3. **缓存机制**:Pjax可以利用...
Grails Pjax插件Pjax在Grails中。 Pjax类似于(turbolinks)[ ,在'A'标签,按钮和表单上工作。 参见_pjaxHeader grails templtate文件中的演示代码。 ## Pjax是什么? Pjax是一个jQuery插件,它使用ajax和pushState...
Pjax(Push State + Ajax)是一种网页应用技术,旨在提供更快的页面切换体验,通过利用浏览器的History API和Ajax技术,实现页面的无刷新加载。这个"最新pjax实现无刷新demo演示下载"是一个示例项目,展示了如何在...
**Pjax(Push State + AJAX)技术详解** Pjax,全称Page JavaScript XHR,是一种通过利用HTML5的History API和Ajax技术来实现页面无刷新加载的前端优化方法。Pjax的目标是提供更快的网页浏览体验,减少用户等待时间...
**jQuery Pjax 插件详解:利用Ajax与PushState实现无刷新加载** jQuery Pjax 是一个流行的JavaScript插件,它允许网页在不进行完全刷新的情况下更新内容,从而提供更快的用户体验。Pjax(PushState + Ajax)这个...
jquery.pjax是基于jquery的单页面开发框架;jquery.pjax是基于jquery的单页面开发框架;
**Laravel 开发与 PJAX 实现** 在Web开发领域,Laravel是一个广泛使用的PHP框架,以其优雅的语法和强大的功能著称。本教程将深入探讨如何在Laravel项目中集成Pjax(Pushstate + Ajax)技术,为用户提供快速、无缝的...
**前端项目-Pjax-Standalone.zip** 是一个专为非jQuery网页设计的独立Pjax(Push State + Ajax)实现。Pjax是一种技术,它允许在不重新加载整个网页的情况下,通过Ajax请求更新页面的部分内容,同时利用HTML5的...
pjax-api, 面向高级web框架的第二代 PJAX PJAX 面向高级web框架的第二代 PJAX 。特性功能 defunkt falsandtru Turbolinks并发集成XOX多区域更新XOO回退区域匹配XOX内容类
PHP emlog博客start主题(含pjax无刷新),此为博客主题模板,非博客主程序,本套模板可让Emlog全站pjax无刷新; 集成highslide图片预览效果;后台可上传LOGO、幻灯片、设置广告等; 支持侧边栏前台开关cookie...
**Pjax(Push State + AJAX)技术详解** Pjax,全称是Push State + AJAX,是一种结合了HTML5 History API和AJAX技术的网页开发方式,它的主要目标是实现页面的快速加载,提升用户体验,同时保持浏览器历史记录的...
主题特色 全站pjax无刷新;集成highslide图片预览效果; (前提需安装模板设置插件)后台可上传LOGO、幻灯片、设置广告等;支持侧边栏前台开关cookie判断(具体自己体验);文章缩略图,优先调用内容第一张图片、...
之前使用jquery.pjax.js在直接请求html页面的时候会对html页面内容进行限制。若出现html标签则会跳转页面,无法实现局部刷新。 htmlpjax针对诸如问题进行了修正,可以正常请求html页面。
pjax是对ajax + pushState的封装,让你可以很方便的使用pushState技术。 同时支持了缓存和本地存储,下次访问的时候直接读取本地数据,无需在次访问。 并且展现方式支持动画技术,可以使用系统自带的动画方式,也...
**Laravel 开发-PJAX** 在 Laravel 框架中,Pjax(Push State + AJAX)是一种增强网页用户体验的技术,它允许用户在不重新加载整个页面的情况下更新内容,只刷新部分区域,从而提高页面加载速度和交互性。Pjax 结合...
在本文中,我们将深入探讨如何在 Laravel 框架中启用和使用PJAX(Push State + AJAX)中间件。PJAX是一种技术,它允许我们实现快速的页面切换,而无需完全重新加载整个页面,从而提高用户体验。在Laravel中集成PJAX...
**前端项目:jQuery.pjax** 在前端开发领域,提高用户体验是至关重要的,而jQuery.pjax插件正是为了这个目标而设计的。它结合了Ajax(异步JavaScript和XML)技术与HTML5的History API(PushState)来实现部分页面...
pjax 可前端独立执行的 pjax。同时请求中也会携带两个ajax请求头,方便后端做优化处理。 xhr.setRequestHeader("X-PJAX", true); // 表明是 pjax 请求 xhr.setRequestHeader("X-PJAX-Container", container); // ...