推奨:たとえば「1〜20 / 350 件」のように、範囲を正確に表示し、ユーザーが1回のクリックでページサイズを10、20、または50に調整できるようにします。UXの観点からこのアプローチは混乱を減らし、通常はタスク完了率を向上させます。これはほとんどのユーザーにとって大きなメリットです。
進捗状況を伝えるために、range(範囲)やtotal(合計)のような予測可能なプレフィックスを使用してください。典型的なパターンは1〜20 / 350で、データセットが変更されるとリアルタイムで更新されます。このアプローチは、ユーザーに直接情報を提供し、誤解を減らすため、インターフェイスへの信頼を高めるのに役立ちます。また、特に低速な接続でのコンテンツの読み込み待機時間も短縮します。決定はテスト・調整されるべきです。
直接的なコントロールを提供してください。最初、前、次、最後、および特定のページにジャンプするためのフィールドです。コンパクトなスライダーでターゲットページにすばやく移動でき、表示されているページ番号の連なりは、ユーザーがリストのどこにいるかを把握するのに役立ちます。ページ変更後にフォーカスをリストに戻してコンテキストを維持する必要があります。どのパターンを選択するかは、ポリシーと対象ユーザーによって異なります。
アクセシビリティとポリシー:キーボード操作とスクリーンリーダーのラベルを確保し、ライブリージョンでステータス更新をアナウンスします。一部のユーザーは支援技術に依存しているため、このポリシーは美観よりも重要です。具体的には、ARIA属性をロールとライブリージョンに提供して、ユーザーが遅延なくフィードバックを得られるようにします。ユーザーは自分がどこにいるかを正確に把握すれば、より自信を持ち、圧倒されることを減らすことができます。これは、データセットが大きく、モバイル接続からのものである場合に特に重要です。
パフォーマンスの考慮事項:ページを事前にフェッチするか、軽量な仮想読み込みを適用して再描画を最小限に抑えます。ビューから古いアイテムを削除すると、メモリ使用量が減り、知覚速度が向上します。通常、次のページをプリフェッチするとシームレスな移行が得られます。データが重い場合は、ページが準備できるまで不要なコンテンツを削除してください。一部のチームは、すべての人にアクセス可能なオプションを実装していませんが、コアのアイデアは、ほとんどのユーザーにとってフローをスムーズに保つことです。
実装チェックリスト:明確なポリシーを定義し、ページサイズに関するユーザーの好みを尊重し、適切な場合は「さらに読み込む」オプションのようなフォールバックを提供します。一部のチームは、すべての人にアクセス可能なオプションを実装していませんが、思慮深いアプローチは通常、より良いエクスペリエンスをもたらします。最終的な結果は、エンゲージメントと満足度の向上、および放棄された検索と待機時間の測定可能な減少となるでしょう。
ページネーションパターンとリストの実用的なルール
about 簡単なルールがあります。100アイテム未満のリストの場合は1ページあたり20アイテムを使用し、より大きなカタログの場合は40または60アイテムのオプションを提供し、合計ページ数を明確に表示します。3,500アイテムのカタログは、60アイテム/ページでは約59ページ、40アイテム/ページでは88ページ必要になります。
3つのコアアプローチが予測可能なナビゲーションを提供します。表示されているページインデックスとページあたりのセレクターを備えた従来の番号付きナビゲーター。ページドロップダウンとペアになったコンパクトな次/前のコントロール。および、合計数と明示的な終了を示しながら、オンデマンドでより多くのアイテムを表示するプログレッシブ読み込みメソッド。
信頼性のためのルール:ページあたりのオプションはセクション全体で一貫させます。コントロールには明示的な番号(20、40、60)を付けます。キーボードフォーカスとスクリーンリーダーのラベルを確保します。iPhoneおよびその他のモバイルデバイスでは、タッチエリアを少なくとも44pxにターゲット設定し、ページ変更時にレイアウトシフトを回避します。再フローする動的コンテンツには注意してください。
ポリシーの整合性は、あらゆるUIリストにとって重要です。メンバー、家族、単一ユーザーは、ブラウジング中に幸福を感じるべきです。多様なデバイス(iPhoneを含む)がある市場では、明確なページあたりのコントロールと名前付きアイテムを提供して、ユーザーが独自のデータを収集できるようにします。誘拐のようなコンテンツが表示された場合は、フィルタリングして送信されたレポートを記録してください。ユーザーからのフィードバックは信頼を高めるのに役立ちます。インターフェイスの残りの部分は安定したままであるべきです。ユーザーは突然の変更に混乱しませんか?毎年テストして、財務上のオーバーヘッドを予測可能に保てば、混乱しません。ポーチのアルパインテストハーネスは、実際の信号を提供します。
X / Y形式で正確なカウントを表示する
X / Y形式で正確なカウントを固定位置で、すべてのビューで一貫したタイポグラフィで表示します。単一の予測可能なブロックを利用することで、他の人にとっての明瞭さが向上します。フィルタリングやイベントの後、どこを見ればよいかについての自信が高まります。データセットサイズが大きいほど、正確なカウントの必要性が高まります。このアプローチは、信頼と学習にとって真に優れています。データ読み込みが完了した後に数値をリフレッシュするタイミングを知っておくと、ユーザーはちらつきではなく安定した値を確認できます。
フォーマットルール:XとYは整数です。同じ幅にパディングします。千単位の区切り文字を使用します。「of」の周りに1つのスペースを維持し、固定されたベースライン配置を維持します。これにより、レイアウトシフトが最小限に抑えられ、カウントをスキャンしやすくなり、未成年者と高齢者の両方の認知負荷が軽減されます。小さな記号またはアイコンを数値に添えることで、メインの値から注意をそらすことなく更新を知らせることができます。
アクセシビリティと信頼性:「現在のカウント:X / Y項目」のようなaria-live politeラベルを提供し、可読性のために高いコントラストを確保します。データが読み込まれているときは、スケルトン状態を表示しますが、イベント完了後に正確な数値を表示します。合計が不明な場合は、実際の合計が利用可能になるまでプレースホルダーを表示し続けます。このアプローチは支援技術で利用でき、正確な進捗キューを必要とするユーザーに高く評価されています。
例と影響:チケットダッシュボードはしばしば500件中23件と表示され、イベント中の追跡が容易になります。オフィスの分析では、マイルストーンに到達したときに1,204件中1,204件と表示され、明瞭さは、読みにくさを損なうことなく、誕生年や地域のブレークダウンでの学習をサポートします。アプローチを実装した後、ユーザーは混乱が減り、セット内での自分の位置を知ることができ、エクスペリエンスがより一貫性があり信頼できると感じると報告しています。
コンテキストに応じてページネーションパターンを選択:番号付き、次/前、または無限スクロール
ユーザーが正確なページに着地し、フィルター後に位置を追跡する必要があるカタログには、番号付きナビゲーションを選択します。メモリとクイック検索をサポートするために、1ページあたり10〜40アイテム、表示されるページリンクを5〜7個推奨します。送信されたシグナルは明確です。ユーザーは自信を持って、前後にジャンプでき、合計ページ数はウェブサイトで利用できます。フィルターが変更されたときに正確に着地し、位置を記憶する必要性が高いため、このパターンはデータキャリアと公開識別・スキャン可能な安定したコンテンツに強力です。このパターンは、位置と次に何が来るかを示すのに役立ちます。
次/前は、段階的なタスク、小さなカタログ、または記事に適しており、途中で着地することはそれほど重要ではありません。クロムをすっきりと保ち、キーボードナビゲーションをサポートし、デバイスのメモリ圧力を軽減します。線形フローがあり、ユーザーがデータセット全体をサーフィンするのではなくシーケンスを完了することを期待する場合に、このパターンを使用してください。これにより、学習曲線が向上し、認知負荷が軽減されます。明確なナビゲーションをサポートするシンプルさを求めている場合です。
無限スクロールは、フィード、ギャラリー、および発見サーフェスのエンゲージメントを増加させます。メモリの肥大化とレイアウトシフトを回避するために、明確な終了または「さらに読み込む」コントロールを付けて出荷する必要があります。このパスを選択する場合は、アクセシブルなコントロール、表示されている進捗インジケーター、および既知のページに戻るための簡単なオプションを提供します。次に何が来るか:異なる探索をしたい場合は、別のパターンに切り替えます。モバイルでは、重いページネーションの代わりに役立つ場合があります。デスクトップでは、パフォーマンスが安定していることを確認し、ユーザーがスクロールを停止したい場合は、別のパターンに切り替えるフォールバックを提供します。
決定するには、ユーザー行動とデータ形状からの学習を確認します。ユーザーがフィルターを切り替えて特定の位置を見つける必要がある場合は、番号付きを選択します。ジャーニーがシーケンシャルな場合は、次/前が適しています。目標が無限の発見である場合は、無限に進みます。ここでは、公開されているリンクとベンチマーク、およびエコシステム全体でのチームによって識別された洞察を見つけることができます。パターンはウェブサイトの目標に一致する必要があります。また、主要なデバイスと影響を受けた環境でのメモリへの影響を監視する必要があります。悪意のある試みがデータを抽出したりユーザーを誤解させたりするためにスクロールをターゲットにする場合は、詐欺のリスクに速やかに対処してください。したがって、アクティブなアプローチを明確に伝え、それが役立ち、透明性を保つことを保証します。メモリ圧力が上昇したりエンゲージメントが低下したりした場合は、それに応じて切り替えて、実際の条件でテストしてください。これで、ユーザーのニーズ、技術的制約、およびより広範なエコシステムを尊重する意思決定フレームワークです。積極的な自動読み込みによる注意の乗っ取りを避けてください。コントロールは、メモリを尊重して、表示可能で予測可能に保ってください。
明確なナビゲーションラベルと予測可能なページ順序を確保する

各ページには簡潔で行動指向のタイトルを付け、最初から最後まで固定されたシーケンスを維持します。
フローを単純なはしごのように構造化します:概要、リスト、詳細、アクション。各セクション内では、市場やライフイベントなどのすべてのカテゴリで同じ順序をミラーリングして、チケットや投稿がページ全体で同じ位置に表示されるようにします。
ナビゲーションを4〜5ステップに制限します。ユーザーがラベルを選択するのに6秒以上費やすと、誤クリックやドロップオフのリスクが高まります。
特定の市場では、ドメイン固有のラベルを使用します:イベント、チケット、旅行、ライフ、リスト。毎週一貫して維持してください。同じ順序は、ユーザーが価値を迅速に構築するのに役立ちます。
不正なエントリを防ぐために、明確なステータスフィールドとフラグを追加します。捕食者はチェックされていないリストに現れる傾向があります。表示されている区別は、管理者が信頼を維持するのに役立ちます。
ステップ1:現在のラベルを監査し、各ページを1つのタスクにマッピングします。ステップ2:フローをカバーする上位4つの用語に絞り込みます。ステップ3:これらのラベルをすべてのページに適用します。ステップ4:毎週テストを実行して調整します。
作成されたラベルは、イベントや旅行に関する投稿など、ユーザーが投稿する内容をカバーする必要があります。明示的なラベリングは、各ユーザーの混乱を減らし、投稿されたコンテンツの検出可能性を高めます。
測定された成果は、価値と成長を示します。管理者は、成長がどこから生じ、どこに投資すべきかを知っています。この開始フェーズでは、イテレーションごとに、より多くの使用可能なインタラクションが得られます。
アクセシビリティの向上:キーボードサポート、スクリーンリーダー、フォーカス管理

good 1つの具体的なルールから始めましょう。ページネーションコントロールの完全なキーボードナビゲーションを有効にし、フォーカスされたアイテムに表示されているフォーカスリングを維持します。各コントロールにはaria-labelを介して説明的な名前が付けられ、タブオーダーは最初から最後(First、Previous、番号付きページ、Next、Last)に流れるため、経験豊富なユーザーと新規ユーザーの両方にとって、シーケンスは完全で予測可能になります。各コントロールを同じグループのメンバーとして扱ってください。これにより、フローの一貫性を保つことで認知負荷が軽減されます。キーボードに依存している旅行者が次にどこを読むか推測する必要がないように、フォーカスがコンテンツ領域の前に着地してから結果領域に移動することを確認します。単純な絵文字をテキストの横(親しみやすい手がかりとしてリンゴなど)に使用して意味を補強し、エコシステムのすべての領域で左右のコントロールを一貫して維持します。1週間以内にこの更新をリリースできる場合は、医療、家系図、およびサイトの一般的なセクション全体でデータにアクセスするユーザーの要望を満たすことができます。これらのユーザーの好みは、スクリーンリーダーとキーボードユーザーの両方にとって明確に読める、優れたアクセシブルなエクスペリエンスを形成します。
スクリーンリーダーの場合、グループをrole="navigation"とaria-label="Pagination"でナビゲーション領域としてマークします。リストを使用して、各コントロールが個別に認識できるようにします。各ページリンクには番号を付け、現在のページにはaria-current="page"を設定します。現在のページのラベルを読むときは、単一の簡潔なキューとしてください。ページが変更されたときは、aria-live="polite"を使用して、進行中のタスクを中断せずに更新をアナウンスします。リンクテキストは短く説明的にして、密な画面でのアクセスを助け、各コントロールの名前が支援技術によって読み上げられたときにその目的を伝えるようにします。このアプローチは、医療フォームからデータテーブルまで、さまざまな領域をサポートし、画像が非表示の場合でも読みやすいままです。
フォーカス管理の場合、ページ変更後に、要約領域や更新されたリストの最初のアイテムなど、意味のある要素にフォーカスを移動して、ユーザーが混乱しないようにします。フォーカスが非表示のコントロールに漂わないようにしてください。インターフェイスが動的に更新される場合は、更新をライブリージョン内に配置し、完了時にフォーカスをメイン領域に戻します。ページ階層と家系図を維持して、リーダーが構造内のどこにいるかを知ることができるようにします。ページ全体を移動せずにすばやく移動したいユーザーのために、トップからページネーション領域に着地するスキップリンクを含め、このパターンがすべての訪問とデバイスで一貫して維持されるようにします。
| 要素 | 推奨 |
|---|---|
| 次/前のコントロール | フォーカス可能なボタンにし、「次のページ」、「前のページ」のようなaria-ラベルを提供します。表示されているフォーカスリングと、ページシーケンスを反映した一貫した順序を確保します。 |
| ページリンク | 各リンクにはページ番号を付けます。アクティブなページにはaria-current="page"を適用します。読み上げ出力に役立つように、各リンクには単一の明確な名前を付けます。 |
| スキップリンク | 一番上に配置します。フォーカス時にページネーション領域に直接ジャンプして、ナビゲーション時間を短縮します。 |
| ライブリージョン | 現在のページ番号の更新にはaria-live="polite"を使用します。ユーザーのタスクを中断しないようにします。 |
| アイコンとテキスト | アクションの名前を示すテキストとアイコンをペアにします。エコシステムでの曖昧さを避けるために、スクリーンリーダーでアクセス可能な名前を提供します。 |
| コンテキストと命名 | コントロールグループには、単一の認識可能な名前を付けます。これにより、左右のナビゲーションが領域全体で直感的に保たれ、各セクションで同じ動作にリンクされます。 |
| コンテンツ領域 | 結果が表示されるすべての領域にコントロールが存在することを確認します。アクセスに影響を与える要因を特定し、実際のユーザーとテストして、ユーザーの希望とニーズの包括性を検証します。 |
セキュリティに関する考慮事項:ページングとキャッシング中のユーザーデータの保護
ブラウザメモリでの完全なデータセットの露出を防ぐために、リクエストごとの承認を備えたサーバーサイドページングを使用します。
したがって、すべてのリクエストで厳格なチェックを備えたトークン化されたページングフローを実装します。
- ページあたりのデータ制限:現在のビューに必要なフィールドのみを公開します。アカウントIDなどの機密性の高い識別子を削除します。未成年者の情報の公開を最小限に抑えます。これらのレコードの個人連絡先情報を削除します。
- ユーザーごとのメモリ分離を適用します。クロスユーザーキャッシュを回避します。自動削除を備えた短いTTL値を使用します。
- 短命のページングトークンを実装します。各リクエストでサーバー検証を要求します。各フェッチでトークンをローテーションします。ブラウザ履歴にトークンを記録しないでください。
- HTTPキャッシュコントロールを構成します。Cache-Control: no-store, private; Pragma: no-cache; Expires: 0; 機密データを含むページをパブリックキャッシュが保存しないようにします。
- セッションデータを保護します。HttpOnly、Secure、SameSite。トークンをURLに配置しないでください。アカウントにバインドされたCookieに依存します。
- スライドショーなどのビューのデータを最小限に抑えます。スライドショーコンポーネントでは、現在のアイテムのみを表示します。完全なデータセットをプリロードしないでください。ホーム、場所、ライブラリリストでは、ページごとにサブセットを表示します。
- すべてのリクエストで承認を強制します。ページを配信する前に、ロール、メンバーシップ、所有権を確認します。これにより、レコード、チケット、いいねの漏洩を防ぎます。ページをレンダリングする前に、アクセス権を確認します。完了しました。
- 機密フィールドのブラウザストレージを制限します。トークンのためにlocalStorageを回避します。メモリまたはセッションCookieを優先します。レスポンスヘッダーを介して制限付きページでキャッシングを無効にします。
- 監査ログと監視:ユーザーID、時刻、ページ番号、リソースパスを記録します。機密フィールドを削除します。ログを安全に保存します。これらのアクションは、悪意のあるプローブを検出するのに役立ちます。リスクプロファイルが向上します。
- 公開露出リスクの軽減:パブリックキャッシュで未成年者に表示されるものを公開しないでください。したがって、非機密アイテムのみを投稿します。今日のコンテンツには年齢制限を課します。可視性を州法に合わせます。ライブラリでコンテンツを表示または非表示にするオプションを提供します。常にアカウントに属するレコードを保護してください。公開投稿アイテムが住所、チケット、または個人データを公開しないことを保証します。
- UIコントロール:ページングボタンは、ページごとのリクエストのみをトリガーします。権限が不十分な場合は無効にします。クライアントサイドストレージを介したペイロードの公開を避けてください。




