2017-05-28 10 views
0

私はこのチュートリアルjqueryの - レイジーロード - 設定された遅延

https://www.resrc.it/demos/lazyload 

を以下だし、これは、画像遅延ロードするために使用されるIは、上記

<script src="https://use.resrc.it/0.9"></script> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> 
<script src="https://rawgit.com/resrcit/ReVIEW/master/jquery.review-1.0.0.min.js"></script> 
<script> 
    $(document).ready(function() { 
    resrc.ready(function() { 
     $('.resrc').review({ 
     callback : function() { 
      resrc.run(this); 
     } 
     }); 
    }); 
    }); 

を使用しているコードであり、それ

<img data-src="http://app.resrc.it/o=95/http://www.your-site.co/image.jpg" alt="An awesome dog" class="resrc"/> 

私の例では10画像あり、次の画像をロードする前に2秒経過します。私はjQueryのsetTimeout関数をどこに置くべきか分からない。私はそれを2秒遅らせると、遅れなくすべての画像をロードします。画像1をロードするには2秒、ロードイメージ2には2秒、ロードイメージ3には2秒などをロードします。

答えて

1

これはあなたのシナリオに対する実際の解決策よりもバニラJSの回避策です10イメージの場合は、遅延設定を変更する必要がある場合は遅延ロードが必要以上に制限される可能性がありますので、これを考慮してください。

あなたが好きなら、timedImg();の初期化をjQuery $(document).ready();の中に置くことができます。

function timedImg() { 
 
    var image1 = document.getElementById("img1"), 
 
    image2 = document.getElementById("img2"), 
 
    image3 = document.getElementById("img3"), 
 
    image4 = document.getElementById("img4"), 
 
    image5 = document.getElementById("img5"), 
 
    image6 = document.getElementById("img6"), 
 
    image7 = document.getElementById("img7"), 
 
    image8 = document.getElementById("img8"), 
 
    image9 = document.getElementById("img9"), 
 
    image10 = document.getElementById("img10"); 
 
    setTimeout(function() { 
 
    image1.style.visibility = "visible" 
 
    }, 0); 
 
    setTimeout(function() { 
 
    image2.style.visibility = "visible" 
 
    }, 2000); 
 
    setTimeout(function() { 
 
    image3.style.visibility = "visible" 
 
    }, 4000); 
 
    setTimeout(function() { 
 
    image4.style.visibility = "visible" 
 
    }, 6000); 
 
    setTimeout(function() { 
 
    image5.style.visibility = "visible" 
 
    }, 8000); 
 
    setTimeout(function() { 
 
    image6.style.visibility = "visible" 
 
    }, 10000); 
 
    setTimeout(function() { 
 
    image7.style.visibility = "visible" 
 
    }, 12000); 
 
    setTimeout(function() { 
 
    image8.style.visibility = "visible" 
 
    }, 14000); 
 
    setTimeout(function() { 
 
    image9.style.visibility = "visible" 
 
    }, 16000); 
 
    setTimeout(function() { 
 
    image10.style.visibility = "visible" 
 
    }, 18000); 
 
} 
 

 
timedImg();
img { 
 
    visibility: hidden; 
 
}
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img1" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img2" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img3" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img4" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img5" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img6" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img7" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img8" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img9" /> 
 
<img src="https://placehold.it/100x100" alt="An awesome dog" id="img10" />

関連する問題