定制 ereminmdev/yii2-infinite-scroll 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ereminmdev/yii2-infinite-scroll

最新稳定版本:v1.0.7

Composer 安装命令:

composer require ereminmdev/yii2-infinite-scroll

包简介

Infinite ajax scroll widget for Yii framework.

README 文档

README

Infinite Ajax Scroll widget.

Based on jQuery plugin: https://infiniteajaxscroll.com

Install

composer require --prefer-dist ereminmdev/yii2-infinite-scroll

Documentation

See for clientOptions: https://infiniteajaxscroll.com/docs/options.html

Use

Add as pager component:

echo ListView::widget([
     'dataProvider' => $dataProvider,
     'itemOptions' => ['class' => 'item'],
     'pager' => ['class' => \ereminmdev\yii2\infinite_scroll\InfiniteScroll::class]
]);

or insert as widget into view:

<div class="pagination">
    <?= InfiniteScroll::widget([
        'pagination' => $dataProvider->getPagination(),
        'clientOptions' => [
            'container' => '.items',
            'item' => '.item',
            'pagination' => '.pagination',
        ],
        'clientExtensions' => [
            InfiniteScroll::EXT_TRIGGER => [
                'offset' => 0,
                'text' => Yii::t('app', 'Load more...'),
                'html' => '<div class="ias-trigger ias-trigger-next"><a class="btn btn-default">{text}</a></div>',
                'textPrev' => Yii::t('app', 'Load previous...'),
                'htmlPrev' => '<div class="ias-trigger ias-trigger-prev"><a class="btn btn-default">{text}</a></div>',
            ],
            InfiniteScroll::EXT_SPINNER => [
                'html' => '<div class="ias-spinner"><i class="fa fa-refresh fa-spin fa-lg"></i></div>',
            ],
            InfiniteScroll::EXT_NONE_LEFT => [
                'html' => 'You reached the end.',
            ],
        ],
        'clientEvents' => [
            'rendered' => new \yii\web\JsExpression('function() { console.log("on rendered"); }'),
        ],
    ]) ?>
</div>

When updating content throw ajax, don't forget to reinitialize plugin:

$(document).on('click', '#sample_filter', function (event) {
    $('.list-view').load('sample_url', function () {
        //reinitialize plugin after load success
        jQuery.ias().reinitialize();
    });
    event.preventDefault();
});

统计信息

  • 总下载量: 6.54k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-10-31