From 25798012d6a0ab3ba0c439f372bbedc5943ac47e Mon Sep 17 00:00:00 2001 From: "(quasar) nebula" Date: Wed, 28 Oct 2020 17:33:03 -0300 Subject: this commit is very large because i am doing work and i would like to not lose progress in case i really screw those git moves up bad also it puts everything new into tracking which is kinda nice --- lazy-loading.js | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 lazy-loading.js (limited to 'lazy-loading.js') diff --git a/lazy-loading.js b/lazy-loading.js new file mode 100644 index 00000000..22f95eb0 --- /dev/null +++ b/lazy-loading.js @@ -0,0 +1,25 @@ +// Lazy loading! Roll your own. Woot. + +function loadImage(image) { + image.src = image.dataset.original; +} + +function lazyLoad(elements) { + for (const item of elements) { + if (item.intersectionRatio > 0) { + observer.unobserve(item.target); + loadImage(item.target); + } + } +} + +const observer = new IntersectionObserver(lazyLoad, { + rootMargin: '200px', + threshold: 1.0 +}); + +for (const image of document.querySelectorAll('img.lazy')) { + observer.observe(image); +} + +window.lazyLoadingExecuted = true; -- cgit 1.3.0-6-gf8a5