nat*_*teM 7 javascript youtube youtube-iframe-api pagespeed-insights
Google PageSpeedInsights 在我的报告中将 Base.js 标记为未使用的 Javascript。487kb 相当大了。似乎来自包括 Youtube 播放器 iframe api。是否需要此文件?如果需要,有人知道为什么它在报告中被标记为未使用的 JS 吗?
iframe API: https: //developers.google.com/youtube/iframe_api_reference
在 PageSpeedInsights 上被标记为未使用 JS 的大文件: https: //www.youtube.com/s/player/c88a8657/player_ias.vflset/en_US/base.js
如果您想仅使用 HTML 来修复此问题,您可以使用该属性设置嵌入内容,以便在点击视频时加载srcdoc。
srcdoc您基本上可以在属性内编写一个 HTML 链接,并且在单击其中的链接之前视频不会加载。
这是一个例子:
<!-- Reference: https://vumbnail.com/examples/srcdoc-iframe-for-lighthouse -->
<iframe
srcdoc="
<style>
body, .full {
width: 100%;
height: 100%;
margin: 0;
position: absolute;
display: flex;
justify-content: center;
object-fit: cover;
}
</style>
<a
href='https://www.youtube.com/embed/Q-X_ED4LHrQ?autoplay=1'
class='full'
>
<img
src='https://vumbnail.com/Q-X_ED4LHrQ.jpg'
class='full'
/>
<svg
version='1.1'
viewBox='0 0 68 48'
width='68px'
style='position: relative;'
>
<path d='M66.52,7.74c-0.78-2.93-2.49-5.41-5.42-6.19C55.79,.13,34,0,34,0S12.21,.13,6.9,1.55 C3.97,2.33,2.27,4.81,1.48,7.74C0.06,13.05,0,24,0,24s0.06,10.95,1.48,16.26c0.78,2.93,2.49,5.41,5.42,6.19 C12.21,47.87,34,48,34,48s21.79-0.13,27.1-1.55c2.93-0.78,4.64-3.26,5.42-6.19C67.94,34.95,68,24,68,24S67.94,13.05,66.52,7.74z' fill='#f00'></path>
<path d='M 45,24 27,14 27,34' fill='#fff'></path>
</svg>
</a>
"
style="max-width: 640px; width: 100%; aspect-ratio: 16/9;"
frameborder="0"
></iframe>Run Code Online (Sandbox Code Playgroud)
在属性内编写 HTML 可能有点笨拙,但它可以完成工作。
如果您不想进入并替换所有 YouTube ID,我在这里编写了一个简单的构建器:https: //vumbnail.com/embed-builder