次のページのコンテンツを再帰的にロードして現在のページに追加する、無限にスクロールするページを作成しています。ブラウジング体験は素晴らしく没入型になると思いますが、現在の方法には使いやすさの欠点がないわけではありません.
プログレッシブエンハンスメントが不完全です。Ajax を使用する場合は、戻るボタンをサポートし、ディープ リンクを提供することを常にお勧めします。無限スクロールの現在の実装はこれをサポートしていません。状態をブックマークする方法はありません。
無限スクロールの UX を改善するためのいくつかのアイデア。意見が必要です。
- 読み込みごとに URL ハッシュを変更します (例: /!#/2 -> /!#/3)。
- 戻るボタンをクリックすると、ページが上にスクロールします。進むボタンをクリックすると、下にスクロールするはずです。
- ディープ リンクへのアクセスは、Ajax 以前と同じように動作する必要があります。ユーザーが要求していないため、ページ 3 に移動してページ 3 から開始すると、ページ 3 のコンテンツのみが表示され、ページ 2 と 1 は表示されません。
- 通常のページネーションのように、2 ページ目と 1 ページ目に移動する方法がまだあるはずです。ページ 3 は scrollTop が 0 でロードされるため、スクロール アップ イベントは役に立ちません。このために、クリック可能なリンクが必要になる場合があります。
- ページ 2 のコンテンツをページ 3 の最後にロードするべきではないため、要求されたページ番号が現在よりも大きいかどうかを確認する必要があります。
皆さんはどう思いますか?