我正在创建一个包含多个 YouTube iframe 的网站,这些 iframe 出现在 Zurb Foundations 显示模式中。该网站的最终版本将包含大约 30 个视频,这将产生沉重的负载并降低页面速度。为了解决这个问题,我打算使用lazyYT.js来延迟加载视频它在第一次加载时效果很好,但是在打开模式并完成播放然后关闭模式后,视频将重新启动并在后台播放。
我在延迟加载中尝试了多种变体,但均未成功。我认为问题在于显示未正确终止 iframe 或延迟加载被错误触发。
小提琴 http://jsfiddle.net/j43aepqh/6/
HTML:
<!-- Triggers the modals -->
<a href="#" data-reveal-id="videoModal" class="radius button">Example Modal w/Video…</a>
<div id="videoModal" class="reveal-modal large" data-reveal="">
<h2>This modal has video</h2>
<div class="flex-video widescreen vimeo" style="display: block;">
<div class="js-lazyYT" data-youtube-id="_oEA18Y8gM0" data-width="560" data-height="315" data-parameters="rel=0"></div>
</div>
<a class="close-reveal-modal">×</a>
</div>
<!-- Reveal Modals end -->
<script>$(document).foundation();</script>
<script>$('.js-lazyYT').lazyYT();</script>
这让我很生气,因为我无法理解正在发生的事情以及如何解决问题。
这是在网站上发布视频的正确有效方式吗?我对使用模态和 YouTubes iframe 嵌入在单个页面上发布多个视频的任何其他方法持开放态度,而不会导致严重的页面速度问题。
是否有任何好的脚本可以延迟 iframe 的加载或一个一个加载它们的方法?
任何帮助或建议将不胜感激。
ps第一次使用stackoverflow,希望我做对了