Contoh:
Anggap saja elemen target adalah <div class='comments'> dan <img>, maka tambahkan css {display:none} pada kedua elemen tersebut seperti berikut;
[code type="CSS"].comments, img{display:none}[/code]
Langkah itu bermaksud untuk menyembunyikan sementara elemen target, kemudian jquery akan bekerja (memunculkan elemen secara perlahan kepermukaan) ketika seseorang men-scroll halaman anda, tapi sebelumnya tambahkan jquery berikut tepat berada di atas tag penutup </body>.
[code type="JQuery"]<script>
$(window).scroll(function() {
var hT = $('.comments, img').offset().top,
hH = $('.comments, img').outerHeight(),
wH = $(window).height(),
wS = $(this).scrollTop();
console.log((hT-wH) , wS);
if (wS > (hT+hH-wH)){
$('.comments, img').fadeIn(3000);
}
});
</script>[/code]
Ini mungkin terlihat seperti lazy load tapi sebenarnya bukan, kerana di browser elemen yang disembunyikan tetap dirender sebagaimana mestinya, tidak ada penundaan yang terjadi di browser pada elemen yang menjadi di target.
Rendering Path |
[code type="JQuery"]<script>
$(window).scroll(function() {
var hT = $('#name_id').offset().top,
hH = $('#name_id').outerHeight(),
wH = $(window).height(),
wS = $(this).scrollTop();
console.log((hT-wH) , wS);
if (wS > (hT+hH-wH)){
$('#name_id').fadeIn(3000);
}
});
<script>[/code]
Dan penerapan pada bagian css adalah seperti berikut;
[code type="CSS"]#name_id{display:none}[/code]
Sangat sederhana bukan...! Cobalah sendiri dan ceritakan kepada admin bagaimana hasilnya melalui kolom komentar.