無限スクロールのプラグインについていろいろ調べてきましたが、今回はテーブル形式でなく、通常の無限スクロールができるもの(イメージとしてはtwitterっぽい遷移。)
infinte scroollというライブラリです。名前そのまんまですね・・・)
公式
https://github.com/metafizzy/infinite-scroll
インストール
bowerに下記のように書いてもいいですし、公式サイトからそのままダウンロードしてもOK。
1 2 3 |
"dependencies": { "jquery-infinite-scroll": "^2.1.0" } |
使い方(※もっといろいろありますが、必要最低限のもの)
JavaScript
1 2 3 4 5 6 7 8 9 10 11 |
<script type="text/javascript"> $('.contents_block').infinitescroll({ navSelector : '.navigation', nextSelector : '.navigation a', itemSelector :'.index_contents_area', loading: { msg: null, msgText: "<strong>次のページを読み込んでいます。</strong>" }, }); </script> |
HTML
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
<div class="contents_block"> <!-- 各データ--> <div class="index_contents_area"> ・・・ </div> <div class="index_contents_area"> ・・・ </div> <div class="index_contents_area"> ・・・ </div> </div> <!-- 次へ--> <div class="navigation"> <span class="next"><a href="/items/index/page:2" rel="next">次のページ</a></span> </div> |
これで下にスクロールすると自動的にページリンクをクリックしていくかのようにページが遷移される感じになります。
注意点
dataTableと違って非常に簡単な反面、次へのページリンクに数字が入っていないとだめっぽいです。これに気づくまでに結構時間かかりました・・・。普通のページャーを使っていて無限スクロールに切り替えたい場合便利だと思います。
参考リンク
【jQuery】無限スクロール[Infinite Scroll]を極限までカスタマイズ
どのやり方がいい? ブクマしておくと便利なjQuery無限スクロールまとめ