0

我尝试将 Pjax 添加到 PHP 站点,因为我想使用 ajax 和 pushState 动态加载内容,而 Pjax 似乎是最好的选择。

在我的site.js文件中,我有:

$(document).pjax('nav li a', '.wrap');

我检查了其他答案,似乎 JS 没有错,我想知道是不是因为我使用的是 PHP?

更新

我已经从 GitHub 页面获取了 jquery.pjax.js,尽管我收到了这个错误:

Uncaught TypeError: Object [object Object] has no method 'live' 

<head>我有:

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script src="/js/jquery.cookie.js"></script>
<script src="/js/jquery.pjax.js"></script>
<script>
$(function(){
  // pjax
  $('ul a').pjax('#main')
})
</script>
4

2 回答 2

2

jQuery.live() 在 1.7 中被弃用并在 1.9 中被移除。

从 jQuery 1.7 开始,不推荐使用 .live() 方法。使用 .on() 附加事件处理程序。旧版本 jQuery 的用户应该使用 .delegate() 而不是 .live()。

http://api.jquery.com/live/

使用较旧的 jQuery 版本或更改您的代码或库代码以使用 .on()

看起来最新版本的 pjax 也解决了这个问题。见https://github.com/defunkt/jquery-pjax#legacy-api

于 2013-08-12T13:47:59.980 回答
1

PHP 与 Pjax 没有任何关系,它只是处理 xhr 请求的前端功能。举个很好的例子,你可以尝试看看这个演示页面: http: //pjax.heroku.com/,查看源代码并从中学习:)

于 2013-08-12T13:18:41.570 回答