比較的シンプルな業務のプロジェクトもありますが、フロントエンドのページングを多用します。プラグインのサイズ制御が難しく、使用が面倒なので、自分でシンプルなものを作成します。 実装のアイデアjQuery.slice() を使用してサブセットの間隔要素を選択し、表示と非表示を制御します。 効果のデモンストレーションデモコード <!DOCTYPE html> <html lang="ja"> <ヘッド> <メタ文字セット="UTF-8"> <meta http-equiv="X-UA-compatible" content="IE=edge"> <meta name="viewport" content="width=デバイス幅、初期スケール=1.0"> <title>フロントエンド ページング実装デモ</title> </head> <本文> <div class="parent"> <ul class="box" style="min-height: 147px;"> </ul> <div class="ページボックス"> <button class="page-btn prev">前のページ</button> <span class="page-num">1/1</span> <button class="page-btn next">次のページ</button> </div> </div> <div class="parent"> <ul class="box2" style="min-height: 63px;"> </ul> <div class="ページボックス"> <button class="page-btn prev">前のページ</button> <span class="page-num">1/1</span> <button class="page-btn next">次のページ</button> </div> </div> <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <スクリプト> /** * ページングの初期化* @param {*}eleBox ページングするコンテナ* @param {*}size ページあたりのエントリ数*/ 関数InitPagination(eleBox, サイズ) { var ボックス = $(eleBox)、 子 = box.children(), 合計 = children.length、 ページボックス = box.next(), ページ番号 = pageBox.find('.page-num'), maxNum = !Math.ceil(合計 / サイズ) ? 1 : Math.ceil(合計 / サイズ); ページ番号.text('1/' + 最大数); 子要素を非表示にする children.slice(0, size).show(); pageBox.off().on('click', '.prev, .next', 関数(e) { var nowNum = parseInt(pageNum.text().split('/')[0]); $(this).hasClass('prev') の場合 { 今の数--; (nowNum < 1) の場合 { 現在数 = 1 戻る; } } それ以外 { 今の数++; (現在の数値 > 最大数値) の場合 { 現在数 = 最大数 戻る; } } 子要素を非表示にする children.slice(size * (nowNum - 1), nowNum * size).show(); pageNum.text(nowNum + '/' + maxNum); }) } // データ書き込みをシミュレートします var box = $('.box'), box2 = $('.box2'), li = ''; (i = 0; i < 16; i++ とします) { li += '<li>' + i + '</li>' } ボックス.html(li); box2.html(li); // ページネーターをインスタンス化します new InitPagination(box, 7) 新しいInitPagination(box2, 3) </スクリプト> </本文> </html> 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MYSQL マスタースレーブ レプリケーションの知識ポイントの概要
目次1. コンセプト1.1 定義1.2 デコレータファクトリー1.3 デコレータの組み合わせ1.4 ...
1. docker-maven-pluginの紹介私たちの継続的インテグレーションプロセスでは、プロ...
目次背景分析するデータシミュレーション1. 従業員テーブルと部門テーブルの2つのテーブルを作成します...
序文Linux サーバーを操作および管理するときに、最もよく使用されるコマンドの 1 つが nets...
JS のクラスの定義や継承は本当に多様なので、別のノートブックを開いて記録しておきます。意味オブジェ...
ご存知のとおり、コンピューターには 2 種類の画像があり、1 つはビットマップ、もう 1 つはベクタ...
GTID の利点により、従来のファイル POS ベースのレプリケーションを GTID ベースのレプリ...
CSS命名規則 ヘッダー: ヘッダーコンテンツ: コンテンツ/含むフッターナビゲーション: navサ...
はじめに: 最近、会社のプロジェクトでデータベースのバージョンが変更されました。ここでは、MySQL...
目次1. コンポーネントの肥大化2. 状態を直接変更する3. プロパティは数値を渡す必要があるが文字...
1. 要素の幅/高さ/パディング/マージンのパーセンテージ基準要素の幅/高さ/パディング/マージンの...
Busybox: 小さなコマンドが詰まったスイスアーミーナイフ。ステップ1: ディレクトリ構造を作成...
必要:あるフィールドの同一項目を結合し、別の時間フィールドで並べ替えます。例:初めに テーブルから都...
声明:この記事では、Web ページ制作技術を使用して問題を包括的に解決するという考え方を反映して、W...
MySQL は非常に強力なリレーショナル データベースです。しかし、初心者の中には、インストールや設...