Web 開発では、写真やビデオは Web ページに不可欠な要素ですが、ネットワーク上の理由により、これらの要素の読み込み速度が非常に遅くなり、ページの読み込みが遅くなったり、直接クラッシュしたりすることがあります。場合によっては、一部の写真やビデオを表示するだけでよい場合もありますが、どのように設定すればよいでしょうか?この記事ではjqueryを例に、ページの読み込みを高速化するためにulを読み込まない設定方法を紹介します。
1. 技術的背景
フロントエンド開発において、jquery は最も一般的に使用される JS フレームワークの 1 つであり、Web ページの開発を迅速に完了し、開発効率を向上させるのに役立ちます。 jquery では、ul をロードしないようにコードを記述して、ページの読み込み速度を向上させることができます。
2. ul を読み込まない方法を設定する
jquery では、ul を読み込まないように JavaScript コードを書くことができます。具体的な方法は次のとおりです。
#ul タグが配置されている div を見つけて、その div のクラスに「lazyLoad」を追加します。例:
-
次のコードを jquery で記述します。
$(window).on("load",function(){
$(".lazyLoad").each(function(){
var totalHeight = $(this).height();
$(this).find("img").each(function(){
totalHeight -= $(this).height();
if(totalHeight > 0){
$(this).attr("src",$(this).data("src"));
}
});
$(this).addClass("loaded");
});
});
ログイン後にコピー
- 上記のコードでは、最初に $(window).on("load",function(){ }) ウィンドウ読み込みイベントをリッスンし、.lazyLoad クラス名を含む各 div を反復処理します。各 div を走査するときに、すべての画像の高さの合計を取得し、totalHeight が 0 より大きいかどうかを判断して、どの画像に src 属性が追加されているかを判断します。 totalHeight が 0 より大きい場合は、画像を src 属性に追加します。それ以外の場合、画像はロードされません。最後に、ロードされたクラス名を div に追加します。 次のコードを CSS に追加します:
.lazyLoad img{
opacity:0;
transition:opacity 500ms ease-in-out;
}
.lazyLoad.loaded img{
opacity:1;
}
ログイン後にコピー
- コードでは、.lazyLoad img の不透明度を 0 に設定し、CSS アニメーションを追加します。 .lazyLoadがロードする必要のある画像をすべてロードした後、それらにロードされたクラス名を追加します.このとき、.lazyLoad.imgの不透明度は1に変更され、src属性を持つすべての画像が表示されます。
3. 効果のデモンストレーション
UL を読み込まない設定方法をよりよく理解するために、この記事では誰でも楽しめる効果のデモンストレーションを用意しました。デモ ページには 10 枚の写真がありますが、そのうちの 5 枚だけがロードされ、残りの 5 枚はロードされません。コンソールを開くと、src 属性が追加されているのは 5 つのイメージのみで、他の 5 つのイメージはロードされていないことがわかります。
4. まとめ
この記事では、jqueryを使ってulを読み込まないよう設定し、ページの読み込みを高速化する方法を紹介します。 JavaScript コードを使用して、.lazyLoad クラス名を含む div をトラバースし、ロードする必要があるすべての画像を検索し、画像の高さと全体の高さの差を計算して画像をロードする必要があるかどうかを判断し、次のコードを追加します。ロードされたクラス名を入力して表示効果を完成させます。
つまり、これは非常に実用的な最適化手法であり、皆さんのフロントエンド開発作業に役立つことを願っています。
以上がjquery設定がulを読み込まないの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。