私はこの記事を見てきました:https://css-tricks.com/ajax-load-container-contents/
これは、jQuery.load( 'url #container')を使用して、別のページ内の特定のdivでロードをajaxすることを提案しています。しかし、コメントは「ええ、でもこれは帯域幅にとってひどいです。ページ全体をロードして、一部だけを解析します」。しかし、代替ソリューションを提供する人は誰もいません。
誰かが包括的な代替案を提供できますか?
あなたが話しているレベルに依存します。jQuery.load
これ以上の選択肢がない場合は、タブコントロールなどに非常に役立ちました。今、これを達成するために人々が使用する多くの技術があります。
の最も一般的な使用例はjQuery.load
、ページ全体(MV *タイプの機能を「偽造」するなど)またはページのセクション(新しいコンテンツで更新するニュースフィードなど)でした。
ページ全体
ロードされたページ全体(タブコントロールなど)では、使用されているルーティングライブラリが表示される傾向があります。たとえば、角度ルーティングや、より軽量な例であるCrossroads.jsなどです。
これらが機能する方法は、ページの更新を強制せず、指定されたテンプレート(.html)ファイルからコンテンツをロードするロケーションハッシュを変更することです。
これが優れている理由は、jQuery.load
ページの場合はDOMが拡大し続けるのに対し、ルートは、そのページで「表示」されなくなった要素をDOMから削除することで、後で「クリーンアップ」するためです。
ページ内のテンプレート
2番目に一般的な使用例jQuery.load
は、コンテンツをページのセクションにロードすることでした。今日ここで行われている最も一般的なことは、ハンドルバーなどのテンプレートライブラリを使用することです。
これらが機能する方法は、スクリプトタグでマークアップを定義することです。次に、Webサーバーなどからコンテンツ(通常はJSON)をロードし、そのJSONにテンプレートを適用して、結果のマークアップをコンテナーに追加します。
これがjQuery.load
ページ全体よりも効率的である理由は、ページから結果全体をロードするのではなく、必要な生データのみをロードして既知のテンプレートに適用するためです。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加