最近調べてみましたが、これに関する情報はありませんでした。
これら2種類のページネーションに違いはありますか? 最も厄介な質問は、データ実行の速度はどうですか? 遅いネットワークにはどちらを使用するのが良いですか?
最近調べてみましたが、これに関する情報はありませんでした。
これら2種類のページネーションに違いはありますか? 最も厄介な質問は、データ実行の速度はどうですか? 遅いネットワークにはどちらを使用するのが良いですか?
どちらの方法でも、サーバー側から結果を取得する必要があります。あなたの場合は、phpだと思います。両方の方法での結果の取得は同じであるため、データの送信と表示に違いがあります。
標準のphpページ付けでは、新しいページの読み込みで要求されるライブラリへのすべての新しい呼び出しは言うまでもなく、ページに必要なすべてのレイアウトやその他のものを含むページ全体を送信する必要があります。
AJAXページ付けを行う場合、たとえばJSON形式でデータのみを送信してから、ユーザー側でjavascriptで必要な要素を作成するか、すでに準備ができているHTMLコードを送信して、それをに挿入する場合がほとんどです。 DOM。
結論として、AJAXバージョンの方が間違いなく高速です。
パフォーマンスについて話さないで、あなたの決定に影響を与えるべき他のいくつかの側面があります。ここにいくつかあります:
控えめなJavaScriptの概念をよく理解しておく必要があります。これは、Javascriptが利用できない場合でも、サイトが機能することを示す概念です。
また、アクセシビリティを念頭に置いて開始することにより、機能のレイヤーを追加するという概念であるプログレッシブエンハンスメント。
ベストプラクティスは次のとおりです。
a)ページ付けサーバー側(PHP)を実装しますb)Javascript上のレイヤー(Ajax / jQuery)
これら2種類のページ付けに違いはありますか?
ページ付けはページ付けです。関数間に実際の違いはなく、実行だけです。
最も厄介な問題は、データ実行の速度がどのくらいかということです。
AJAXは確かに速く感じられ、ページ全体とそのすべてのオーバーヘッドを再レンダリングする必要がないため、多くの場合より速く感じられます。もちろん、うまくプログラムされていないと壊れてしまう可能性のある余分なレイヤーも追加されます。
低速のネットワークにはどちらを使用するのが良いですか?
場合によります。セルラーネットワークの速度を考えていますか?もしそうなら、モバイル向けのサイトはどの程度最適化されていますか?デスクトップとダイヤルアップを考えているだけですか?
(A)ページネーションのようにAJAXを別の方法でプログラムすることもできます。すべての結果を一度にロードしてから、Javascriptを使用して結果を「ページ」に分割することができます。効果的にすべてのHTMLマークアップをそこに配置し、必要に応じて表示/非表示にします。
(B)最初のページのみをロードし、AJAXをサーバーに呼び出して追加のページをロードすることしかできませんでした。
良い
オプション(A)は、複数のページを表示する可能性が高い場合に適しています。ページの読み込み時にサーバーに1回アクセスするだけで、Javascriptを使用して読みやすく表示できます。
オプション(B)は、ほとんどのページを表示する可能性が低い場合に適切に機能します。
悪い
オプション(A)必要以上に多くのデータをロードして、最初のページのロードを遅くすることができます(ただし、結果リストのサイズによっては、すでにオーバーヘッドがあるため、一部のみです)。
オプション(B)ユーザーが多くのページを表示する場合、データをロードするためにネットワークを介してより多くの呼び出しを行う可能性があります。これは、特定のデータセットのロードに時間がかかる場合は低速になる可能性があります。
それがお役に立てば幸いです。
結果セットでフラグメントのみを更新する必要があり、すべてのアセット (ペイロード、ヘッダー、および待ち時間) を再度更新する必要はないため、ajax ページネーションはページ全体をリロードするよりも高速である必要があります。
サーバーから送信されるデータ形式も慎重に計画すると (クライアント側のテンプレート エンジンで使用できるプレーンな HTML の代わりに JSON を使用するなど)、ペイロードを削減して、全体的な応答時間に大きなメリットをもたらすことさえできます。
さらに、ページが読み込まれるたびに実行されるスクリプトがページに含まれている場合、ページが読み込まれるたびに JavaScript インタープリターによって余分な時間が常に費やされますが、ajax ではスクリプトを 1 回実行します (また、いくつかの機能を再適用する必要がある場合)。結果セットの要素にイベント委任の恩恵を受けることができます)