之前也没有研究过pjax,但是没事走访别人博客时看到不少经过pjax优化的网站,响应速度很快,今天看到玖梦博客的一篇《一行代码实现全站pjax无刷新加载》测试后发发现效果确实不错,但是由于我是老的媒体范板子,且多次修改,难免在引用之后出现一些些bug所以就放弃了pjax,本文转载记录一下。
一:整合pjax的准备工作;
检查你的网站是否引入1.7.0版本以上的jquery.js,如果没有请全局引入
1.新浪CDN提速:
<script type="text/javascript" src="http://lib.sinaapp.com/js/jquery/1.9.0/jquery.js"></script>
1.7.0版本以上的才有pushState的封装。
二:开始整合pjax;
1.下载pjax.js (本文底部);
2.在你喜欢的位置(最好body代码结束前)引入pjax.js
<script src="<?php echo TEMPLATE_URL; ?>js/pjax.js" type="text/javascript"></script>
三:使用pjax;
编辑模版footer.php在</body>标记结束前插入:
<script> $(document).pjax('a[target!=_blank]', '#contentleft', {fragment:'#contentleft', timeout:8000}); </script>
写好代码后,将容器contentleft付给一个ID,比如在body内的一个div,如:
<body> <div id="contentleft"> 网站内容部分... </div> </body>
到这里就可以测试效果了,但是需要取消链接target=_blank效果才能有效哦。
一切都搞定之后你就成功了。
或者用下面简单的修改方法:
<!--Pjax无刷新引入,放在<body>标签后-->.
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/pjax.js"></script>
<div id="contentleft">
<!--end Pjax无刷新引入,放在<body>标签后-->
这部分是body页面页面内容部分。。。
<!--Pjax无刷新引入,放在头部</body>标签前-->.
<script>$(document).pjax('a[target!=_blank]', '#contentleft', {fragment:'#contentleft', timeout:8000});</script>
</div>
<!--end Pjax无刷新引入,放在头部</body>标签前-->
电脑浏览网页时无法使用QQ快捷登录打开处理
给新入坑互联网开发小白的建议——服务器选