javascript - pjax:如何使后退按钮从服务器重新请求 html

标签 javascript pjax

pjax 插入到 pjax 容器中的 html 代码包括一些 javascript 代码。它工作得很好——当 pjax 进行插入时,js 被执行。

但是,当用户点击浏览器的“后退”按钮时,它不会发生。

示例情况:

  • 用户转到/aaa
  • 用户点击 pjax 链接到/bbb(请求的 html包含js,执行)
  • 用户点击 pjax 链接到/ccc
  • 用户点击 pjax 链接到/bbb(请求的 html包含js,执行)
  • 用户点击 pjax 链接到/ccc
  • 用户点击后退按钮 - js 没有执行。

最佳答案

要加载页面中添加的jquery,需要在pjax事件完成后调用。

要使其也适用于浏览器的后退/前进按钮点击,您可以使用 pjax-end 事件。

$("#pjax_container_id").bind('pjax:end', function() {
  // call your jquery functions
});

希望对您有所帮助。

谢谢。

关于javascript - pjax:如何使后退按钮从服务器重新请求 html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17556557/

相关文章:

javascript - Backbone.js - View 如何找到这个集合?

javascript - 单击发送按钮时如何在 "given text"上附加文本区域。?

javascript - angular js在每个http请求$http上添加请求参数

javascript - 为什么使用jquery ajax加载时没有定义jquery pjax

php - 多个 PJAX 请求

javascript - 屏幕阅读器和 JavaScript 焦点事件的可访问性?

javascript - 当条件满足时运行函数?

ajax - 启用 history.pushState 页面上的 AdSense

ajax - 迫切需要一个适用于 Ajax 的 Adsense 解决方案

javascript - AJAX模板渲染后的PJAX