我正在使用懒人大小来懒人加载我的YouTube视频。在每一个页面上,懒加载都能正常工作,但在这两个页面上却不行,更准确地说,整个视频都消失了,不显示了。这两个页面和所有其他页面在同一个文件夹里,而其他页面是可以工作的。lazysizes.js的链接在这里。<script src="lazysizes.min.js" async></script>
这里是其中一个工作页面的iframe,视频正在显示。
<iframe width="640" height="360" data-src="https://www.youtube.com/embed/xxx?rel=0" importance="low" loading="lazy" frameborder="0" class="lazyload" allow="encrypted-media" allowfullscreen></iframe>
这里是无法工作的iframe 没有显示视频 -- 完全一样。
<iframe width="640" height="360" data-src="https://www.youtube.com/embed/3FOZ2CTaaWk?rel=0" importance="low" loading="lazy" class="lazyload" frameborder="0" allow="encrypted-media" allowfullscreen></iframe>
我知道这没有意义,但我希望你们中的一个人也遇到了同样的问题。我试过复制和粘贴(把它们换了,所以不是真正的iframe代码)并更改,重新加载js等,但没有任何帮助。iframe和其他页面的代码是一样的。我不知道如何找出这里缺失的东西。
我傻眼了,控制台显示:lazysizes.min.js被加载到这个特定URL的目录中。由于这个URL(及其...目录)是人为创建的。lazysizes.min.js
无法在该目录下找到(尽管在FTP服务器上,js文件与加载它的php文件在同一目录下),它无法被加载。一行简单的额外代码,包括 lazysizes.min.js
在iframe嵌入上面加上一个绝对的js文件的URL,就解决了这个问题!