You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress站点背景视频异步加载可行方案问询

WordPress站点背景视频异步加载方案求助

我正在修改一个WordPress站点,站点头部为100vw×100vh尺寸,内嵌了一个作为背景的视频,原始代码如下:

<video preload="auto" autoplay muted loop="loop" id="header_background_video">
    <source src="<?= $header['achtergrond']['url']; ?>" type="video/mp4">
</video>

视频托管在本站服务器,但通过Google测速工具和GTmetrix测试发现,视频体积过大是核心速度瓶颈,导致站点评分极低。

已尝试以下优化方案,但均未解决问题:

  • 压缩视频至模糊状态
  • 转换为webm格式
  • 转换为webm格式并二次压缩
  • 将视频缩短至5秒(时长过短,影响视觉体验),但速度问题依旧存在

禁用autoplay属性可以提升加载速度,但会破坏头部的展示效果。经调研得知,异步加载视频可以在保留autoplay的前提下解决速度问题,但未找到无需第三方工具的有效实现教程。

我尝试了以下代码,但未能生效:

function lazy_load() { ?>
    <script>
        window.addEventListener('load', (event) => {
            footer_lazyloader();
        });


        function footer_lazyloader() {
            $(function() {
                $("video#header_background_video source").each(function() {
                    var sourceFile = $(this).attr("data-src");
                    $(this).attr("src", sourceFile);
                    var video = this.parentElement;
                    video.load();
                    video.play();
                });
            });
        }
    </script>
<?php }
add_action('wp_footer', 'lazy_load');

当前视频HTML元素代码:

<video muted loop="loop" id="header_background_video">
    <source src="<?= $header['achtergrond']['url']; ?>" type="video/mp4">
</video>

请问:是否存在可行的视频异步加载方案?


内容的提问来源于stack exchange,提问作者MathyB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 12:36:14