JS文件中未定义延迟加载交点观察器

时间:2019-03-19 16:50:25

标签: javascript lazy-loading intersection-observer

我目前正在尝试使用IntersectionObserver来帮助我进行延迟加载,但是当我将其包含在.js文件中时,会出现错误“未定义'IntersectionObserver'”。

有人知道这是为什么吗?我是懒惰加载的新手,可能会丢失一些东西。

我正在使用以下代码:

const targets = document.querySelectorAll("img.lazy");

        const lazyLoad = target => { 
          const io = new IntersectionObserver((entries, observer) => {
            entries.forEach(entry => {
              console.log(" <3 ");

              if (entry.isIntersecting) {
                const img = entry.target;
                const src = img.getAttribute("data-lazy");
                const srcset = img.getAttribute("data-srcset");

                img.setAttribute("srcset", srcset);
                img.setAttribute("src", src);
                img.classList.add("fade");

                observer.disconnect();
              }
            });
          });

          io.observe(target);
        };

        targets.forEach(lazyLoad);

0 个答案:

没有答案