HTML5 视频未在 chrome 中加载,但在开发者控制台打开时有效

IT技术 javascript html reactjs google-chrome html5-video
2021-05-03 00:13:28

我正在为客户开发 Web 应用程序,但 HTML5 视频标签存在问题。

问题是视频无法在 chrome 中加载,但可以在 Safari、Firefox 和 IE 上运行。

所以我开始在 chrome 中调试,但我发现如果我在打开控制台的情况下刷新页面,视频会加载。但是当我关闭控制台并刷新时,视频不会加载......

以下是我尝试过的几件事:

有多种类型的视频,mp4 和 webm。在 componentDidMount 中,用相同的代码替换视频。

但似乎没有一个工作......

<div class="Top">
    <div class="video-container BGVideo">
        <video id="videobg" class="video-background" preload="true" loop="" autoplay="" poster="/img/azzura.jpg">
            <source src="/img/azzura.mp4">
            <source src="/img/azzura.webm">
        </video>
        <div class="video-overlay"></div>
        <div class="video-content">
            <div class="BGContent">
                <div class="scrollDown">
                    <a class="button"><i class="fa fa-chevron-down"></i></a>
                </div>
            </div>
        </div>
   </div>
</div>
2个回答

我发现我的问题是我启用了自动播放,但是根据 chrome 的新政策,除非视频静音,否则不允许自动播放,因此添加静音属性可以解决问题。

这对我来说很好。

完成的参数loop="false"以及autoplay="false"您清空它们的参数例如loop="",等等。

<div class="Top">
    <div class="video-container BGVideo">
        <video id="videobg" class="video-background" preload="true" loop="false" autoplay="false" poster="">
            <source src="https://www.sample-videos.com/video/mp4/720/big_buck_bunny_720p_1mb.mp4">
        </video>
        <div class="video-overlay"></div>
        <div class="video-content">
            <div class="BGContent">
                <div class="scrollDown">
                    <a class="button"><i class="fa fa-chevron-down"></i></a></div>
                </div>
            </div>
        </div>
    </div>