未捕获的ReferenceError:未定义LazyLoad

时间:2018-04-12 14:29:40

标签: javascript lazy-loading referenceerror

我正在使用这个延迟加载脚本:https://github.com/verlok/lazyload

根据我的建议,我已在</body>标记之前添加了此脚本:

<script type="text/javascript">
    (function(w, d){
        var b = d.getElementsByTagName('body')[0];
        var s = d.createElement("script"); s.async = false;
        var v = !("IntersectionObserver" in w) ? "8.7.1" : "10.5.2";
        s.src = "https://cdnjs.cloudflare.com/ajax/libs/vanilla-lazyload/" + v + "/lazyload.min.js";
        w.lazyLoadOptions = {}; // Your options here. See "recipes" for more information about async.
        b.appendChild(s);
    }(window, document));
</script>
<script>
    new LazyLoad();
</script>

但是,我收到了Google Chrome控制台错误:

  

未捕获的ReferenceError:未定义LazyLoad

我尝试设置s.async = false,但这没有帮助。

如何防止此错误?

1 个答案:

答案 0 :(得分:0)

您应该将对象恰好添加到初始代码中看到注释的位置

“您在这里的选项。有关异步的更多信息,请参见“食谱”。”

您正在混合异步加载和同步加载以及Lazyload的执行。