UNPKG

lazysizes

Version:

High performance (jankfree) lazy loader for images (including responsive images), iframes and scripts (widgets).

3 lines (2 loc) 1.26 kB
/*! lazysizes - v5.3.2 */ !function(e,t){var i=function(){t(e.lazySizes),e.removeEventListener("lazyunveilread",i,!0)};t=t.bind(null,e,e.document),"object"==typeof module&&module.exports?t(require("lazysizes")):"function"==typeof define&&define.amd?define(["lazysizes"],t):e.lazySizes?i():e.addEventListener("lazyunveilread",i,!0)}(window,function(e,i,t){var n,a,s,o,r=navigator.userAgent;function d(){for(var e=i.querySelectorAll("picture > img, img[srcset][sizes]"),t=0;t<e.length;t++)!function(e){var t,i,n=e.parentNode;"PICTURE"===n.nodeName.toUpperCase()?(t=s.cloneNode(),n.insertBefore(t,n.firstElementChild),setTimeout(function(){n.removeChild(t)})):(!e._pfLastSize||e.offsetWidth>e._pfLastSize)&&(e._pfLastSize=e.offsetWidth,i=e.sizes,e.sizes+=",100vw",setTimeout(function(){e.sizes=i}))}(e[t])}function c(){clearTimeout(a),a=setTimeout(d,99)}function f(){c(),o&&o.addListener&&o.addListener(c)}e.HTMLPictureElement&&/ecko/.test(r)&&(n=r.match(/rv\:(\d+)/))&&n[1]<41&&addEventListener("resize",(s=i.createElement("source"),o=e.matchMedia&&matchMedia("(orientation: landscape)"),s.srcset="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",/^[c|i]|d$/.test(i.readyState||"")?f():i.addEventListener("DOMContentLoaded",f),c))});