silverstripe-australia/silverstripe-pagejax

此包已被弃用,不再维护。作者建议使用symbiote-library/silverstripe-pagejax包。

通过Ajax添加部分页面加载

安装: 36

依赖者: 0

建议者: 0

安全: 0

星标: 7

关注者: 7

分支: 1

语言:JavaScript

类型:silverstripe模块

1.0.2 2018-02-10 03:30 UTC

This package is not auto-updated.

Last update: 2022-02-01 12:32:25 UTC


README

重要

此模块不再积极维护,但如果您有兴趣采用它,请告诉我们!

为SilverStripe的Pagejax模块

通过Ajax添加部分页面加载。

安装

遵循标准SilverStripe模块安装程序

要求

您必须在您的页面上包含jquery

用法

目前我们需要修改Page_Controller并添加以下方法

	public function getViewer($action) {
        $viewer = parent::getViewer($action);
		$this->extend('updateViewer', $action, $viewer);
        return $viewer;
    }

修改您的main Page.ss模板,将

	$Layout

改为

	<div class="pagejax-container">$Layout</div>

然后,任何需要内部加载的链接都需要应用pagejax类,例如

	<a href="some/internal/page" class="pagejax">Internal page</a>

要自定义页面过渡的进入和退出方式,可以绑定到window.pagejaxStart和window.pagejaxComplete事件,例如

	$(window).bind('pagejaxStart', function () { });

要更改每次刷新时的页面标题,在您的Page_Controller类中指定一个ajaxTitle()方法;否则,页面标题将不会更改。

该模块会考虑使用Requirements::添加的CSS和JS,通过解析相关头信息