Javascript Lazy Loading Image untuk Blogger
Javascript ini cocok untuk template blog yang menggunakan gambar thumbnail dengan ukuran yang sedikit agak besar, karena dapat mengurangi beban loading blog.
Disini saya sedikit memodifikasi javascript ini agar gambar yang diload dapat ditentukan lebar dan tingginya. sesuai keinginan.
Contoh penggunaan, plugin ini akan bekerja pada gambar yang memilik atribut class lazy:
<img src="blank.gif" class="lazy" data-src="/images/full-size.jpg" width="240" height="152">blank.gifadalah gambar pengganti sebelum gambar asli dimuat.data-srcdisi dengan url gambar asliwidthuntuk menentukan lebar dari gambar tersebut, harus disiheightuntuk menentukan tinggi dari gambar tersebut, harus disi
Simpan Javascript ini diatas kode </body>
<script type="text/javascript">
//<![CDATA[
/* lazyload.js (c) Lorenzo Giuliani
* MIT License (http://www.opensource.org/licenses/mit-license.html)
*
* expects a list of:
* `<img src="blank.gif" data-src="my_image.png" width="600" height="400" class="lazy">`
* modified by Rifan Hidayat <http://obesitystrike.blogspot.com>
*/! function (e) {
function t(e, t) {
var n = new Image,
r = e.getAttribute("width"),
p = e.getAttribute("height"),
l = e.getAttribute("data-src").replace(/\/s[0-9]+(\-c)?/, "/w" + r + "-h" + p + "-c");
n.onload = function () {
e.parent ? e.parent.replaceChild(n, e) : e.src = l, t ? t() : null
}, n.src = l
}
function n(t) {
var n = t.getBoundingClientRect();
return n.top >= 0 && n.left >= 0 && n.top <= (e.innerHeight || document.documentElement.clientHeight)
}
for (var r = function (e, t) {
if (document.querySelectorAll) t = document.querySelectorAll(e);
else {
var n = document,
r = n.styleSheets[0] || n.createStyleSheet();
r.addRule(e, "f:b");
for (var l = n.all, c = 0, a = [], i = l.length; i > c; c++) l[c].currentStyle.f && a.push(l[c]);
r.removeRule(0), t = a
}
return t
}, l = function (t, n) {
e.addEventListener ? this.addEventListener(t, n, !1) : e.attachEvent ? this.attachEvent("on" + t, n) : this["on" + t] = n
}, c = new Array, a = r("img.lazy"), i = function () {
for (var e = 0; e < c.length; e++) n(c[e]) && t(c[e], function () {
c.splice(e, e)
})
}, o = 0; o < a.length; o++) c.push(a[o]);
i(), l("scroll", i)
}(this);
//]]>
</script>
0 Response to "Javascript Lazy Loading Image untuk Blogger"
Post a Comment