`
Tzhennan
  • 浏览: 58204 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

pjax

 
阅读更多

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与Kratos Pjax 0.4.4:实现高效网页加载技术解析》 在互联网技术日新月异的今天,网站性能优化已经成为提升用户体验的关键因素之一。WordPress作为全球最受欢迎的内容管理系统(CMS),其丰富的插件生态...

    pjax+asp.net

    **Pjax(Push State + AJAX)技术在ASP.NET中的应用** Pjax,全称为Push State + AJAX,是一种优化网页加载速度的技术,它结合了浏览器的History API(HTML5中的pushState和replaceState方法)和AJAX(异步...

    pjax代码包最新版

    2. **事件处理**:Pjax库会触发一系列事件,如`pjax:start`、`pjax:end`、`pjax:success`和`pjax:error`,以便在Pjax操作的不同阶段进行相应的处理,如显示加载指示器、处理错误等。 3. **缓存机制**:Pjax可以利用...

    grails-pjax:Grails Pjax插件云可帮助您在Grails中使用pjax

    Grails Pjax插件Pjax在Grails中。 Pjax类似于(turbolinks)[ ,在'A'标签,按钮和表单上工作。 参见_pjaxHeader grails templtate文件中的演示代码。 ## Pjax是什么? Pjax是一个jQuery插件,它使用ajax和pushState...

    最新pjax实现无刷新demo演示下载

    Pjax(Push State + Ajax)是一种网页应用技术,旨在提供更快的页面切换体验,通过利用浏览器的History API和Ajax技术,实现页面的无刷新加载。这个"最新pjax实现无刷新demo演示下载"是一个示例项目,展示了如何在...

    pjax demo实例 可以研究下

    **Pjax(Push State + AJAX)技术详解** Pjax,全称Page JavaScript XHR,是一种通过利用HTML5的History API和Ajax技术来实现页面无刷新加载的前端优化方法。Pjax的目标是提供更快的网页浏览体验,减少用户等待时间...

    Query插件pjax,修改pjax再次请求的时候部分js没有加载,它通过ajax和pushState技术提供了极速的(无刷新ajax加载)

    **jQuery Pjax 插件详解:利用Ajax与PushState实现无刷新加载** jQuery Pjax 是一个流行的JavaScript插件,它允许网页在不进行完全刷新的情况下更新内容,从而提供更快的用户体验。Pjax(PushState + Ajax)这个...

    jquery.pjax .js

    jquery.pjax是基于jquery的单页面开发框架;jquery.pjax是基于jquery的单页面开发框架;

    Laravel开发-laravel-pjax

    **Laravel 开发与 PJAX 实现** 在Web开发领域,Laravel是一个广泛使用的PHP框架,以其优雅的语法和强大的功能著称。本教程将深入探讨如何在Laravel项目中集成Pjax(Pushstate + Ajax)技术,为用户提供快速、无缝的...

    前端项目-Pjax-Standalone.zip

    **前端项目-Pjax-Standalone.zip** 是一个专为非jQuery网页设计的独立Pjax(Push State + Ajax)实现。Pjax是一种技术,它允许在不重新加载整个网页的情况下,通过Ajax请求更新页面的部分内容,同时利用HTML5的...

    pjax-api, 面向高级web框架的第二代 PJAX.zip

    pjax-api, 面向高级web框架的第二代 PJAX PJAX 面向高级web框架的第二代 PJAX 。特性功能 defunkt falsandtru Turbolinks并发集成XOX多区域更新XOO回退区域匹配XOX内容类

    PHP emlog博客start主题(含pjax无刷新) V5.32.rar

    PHP emlog博客start主题(含pjax无刷新),此为博客主题模板,非博客主程序,本套模板可让Emlog全站pjax无刷新;  集成highslide图片预览效果;后台可上传LOGO、幻灯片、设置广告等;  支持侧边栏前台开关cookie...

    pjax 示例代码

    **Pjax(Push State + AJAX)技术详解** Pjax,全称是Push State + AJAX,是一种结合了HTML5 History API和AJAX技术的网页开发方式,它的主要目标是实现页面的快速加载,提升用户体验,同时保持浏览器历史记录的...

    emlog博客start主题(含pjax无刷新) v5.32

    主题特色 全站pjax无刷新;集成highslide图片预览效果; (前提需安装模板设置插件)后台可上传LOGO、幻灯片、设置广告等;支持侧边栏前台开关cookie判断(具体自己体验);文章缩略图,优先调用内容第一张图片、...

    pjax请求html页面

    之前使用jquery.pjax.js在直接请求html页面的时候会对html页面内容进行限制。若出现html标签则会跳转页面,无法实现局部刷新。 htmlpjax针对诸如问题进行了修正,可以正常请求html页面。

    pjax (ajax + pushState的封装) 无刷新翻页等

    pjax是对ajax + pushState的封装,让你可以很方便的使用pushState技术。 同时支持了缓存和本地存储,下次访问的时候直接读取本地数据,无需在次访问。 并且展现方式支持动画技术,可以使用系统自带的动画方式,也...

    Laravel开发-pjax

    **Laravel 开发-PJAX** 在 Laravel 框架中,Pjax(Push State + AJAX)是一种增强网页用户体验的技术,它允许用户在不重新加载整个页面的情况下更新内容,只刷新部分区域,从而提高页面加载速度和交互性。Pjax 结合...

    Laravel开发-laravel-pjax-middleware

    在本文中,我们将深入探讨如何在 Laravel 框架中启用和使用PJAX(Push State + AJAX)中间件。PJAX是一种技术,它允许我们实现快速的页面切换,而无需完全重新加载整个页面,从而提高用户体验。在Laravel中集成PJAX...

    前端项目-jquery.pjax.zip

    **前端项目:jQuery.pjax** 在前端开发领域,提高用户体验是至关重要的,而jQuery.pjax插件正是为了这个目标而设计的。它结合了Ajax(异步JavaScript和XML)技术与HTML5的History API(PushState)来实现部分页面...

    pjax.js:纯前端pjax

    pjax 可前端独立执行的 pjax。同时请求中也会携带两个ajax请求头,方便后端做优化处理。 xhr.setRequestHeader("X-PJAX", true); // 表明是 pjax 请求 xhr.setRequestHeader("X-PJAX-Container", container); // ...

Global site tag (gtag.js) - Google Analytics