filsh / yii2-mpjax
多 pjax + backbone.js 实现
dev-master
2015-07-07 16:00 UTC
Requires
- bower-asset/backbone: *
- yiisoft/yii2: *
This package is auto-updated.
Last update: 2024-08-29 04:48:39 UTC
README
多 pjax + backbone.js 实现
安装
安装此扩展的首选方式是通过 composer。
运行以下命令:
php composer.phar require --prefer-dist filsh/yii2-mpjax "*"
或者将以下内容添加到您的 composer.json 文件的 require 部分:
"filsh/yii2-mpjax": "*"
使用
```
$this->beginMpjax('header'); echo '<div>header</div>'; $this->endMpjax(); $this->beginMpjax('body'); echo '<div>body</div>'; $this->endMpjax();
Backbone.Mpjax = { Router: Backbone.Router.extend({ navigate: function (fragment, options) { this.trigger('mpjax:start', fragment); Backbone.Router.prototype.navigate.apply(this, [fragment, options]); var self = this; $.ajax({ url: fragment, beforeSend: function (xhr) { xhr.setRequestHeader('X-PJAX', 'true'); xhr.setRequestHeader('X-PJAX-Container-0', 'header'); xhr.setRequestHeader('X-PJAX-Container-1', 'body'); }, success: function (data) { // Object { header="<div>header</div>", body="<div>body</div>"} self.trigger('mpjax:success'); }, error: function () { self.trigger('mpjax:error'); } }); } }) }; var Router = Backbone.Mpjax.Router.extend({ routes: { "test": "test" }, test: function(){ console.log("Test!"); } });