【问题标题】:Video autoplay on Safari 11Safari 11 上的视频自动播放
【发布时间】:2019-01-21 01:16:08
【问题描述】:

您好,您已注意到视频不再在 safari 11 上自动播放。下面是我的代码,它可以在 Chrome 上运行,因为它必须被静音。它只显示海报图像。任何帮助。

<video width="100%" poster="poster_url.png" autoplay muted playsinline>
<source src="video_url.mp4" type="video/mp4">
</video>

【问题讨论】:

    标签: video safari html5-video


    【解决方案1】:

    以下在 OSX 10.12.6 上的 Safari 11.1.2 上为我自动播放

    <video width="100%" poster="poster_url.png" autoplay muted playsinline>
    <source src="http://download.blender.org/peach/trailer/trailer_480p.mov" type="video/mp4">
    </video>

    规则确实经常变化,用户或组织也可以设置自己的偏好,因此 Safari 团队建议您始终检查代码以查看视频是否能够自动播放:

    var promise = document.querySelector('video').play();
    
    if (promise !== undefined) {
        promise.catch(error => {
            // Auto-play was prevented
            // Show a UI element to let the user manually start playback
        }).then(() => {
            // Auto-play started
        });
    }
    

    在撰写本文时这里有更多详细信息:

    【讨论】:

    • @PaulSlocum - 你的意思是代码 sn-p?我刚刚在 Safari 12.01 和 OSX 10.13.16 上对其进行了测试,它对我有用。您是否可能在浏览器中设置了一些偏好来停止自动播放?视频有白色边框,因此如果您的浏览器窗口很小以查看视频本身,则可能值得滚动该框。
    • 停止自动播放是最新版本的默认设置。告诉所有访问您网页的人进入设置并更改设置显然不是一种选择。您的答案是之前的标准答案,但现在不适用于默认浏览器设置。
    • @PaulSlocum Safari 12.0.1 是最新的 Safari 版本,我刚刚在两台不同的机器和上面的 sn-p 上验证了它,加上一个使用此代码作为额外检查的简单测试站点,自动播放没有对默认浏览器设置的任何调整。也许我误解了你的cmets?
    • @PaulSlocum - 为了完整性,还在运行最新 Safari 的 iOS 11.2.6 上进行了测试,并且它也会在那里自动播放。
    • 它在我使用的任何版本的 Safari 11 中都无法使用,但它似乎在 MacOS 和 iOS 上的 Safari 12 中都可以使用
    猜你喜欢
    • 2018-12-17
    • 2022-01-19
    • 2021-03-06
    • 2018-03-08
    • 1970-01-01
    • 2011-03-01
    • 1970-01-01
    • 2018-01-25
    • 1970-01-01
    相关资源
    最近更新 更多