[HTML 5] Autoplay video

Normal browser has restiction that doesn't allow you automaticlly play the video, unless your site has high Media Enagement index (MEI).

There are 2 way to resolve this problem.

1. Click and Play

async function play() {
    try {
        await vdo.play();
        vdoContainer.style.display = 'none'
        playBtn.removeEventListener('click', play)
    } catch(err) {
        vdoContainer.style.display = 'flex'
        playBtn.addEventListener('click', play)
    }
}

2. Mute the sound and Play

async function play() {
    vdo.muted = true
    vdo.play()
    const ctx = new AudioContext()
    const canAutoPlay = ctx.state === 'running'
    ctx.close()
    if (canAutoPlay) {
        vdo.muted = false
        vdoContainer.style.display = 'none'
        muteBtn.removeEventListener('click', play)
    } else {
        vdoContainer.style.display = 'flex'
        muteBtn.addEventListener('click', play)
    }
}

 

posted @   Zhentiw  阅读(13)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2023-08-25 [Algorithm] LRU Cache
2020-08-25 [React] Styled System with extendable Box element
2019-08-25 Define Interfaces and Share Class Members through Mixins in Dart
2019-08-25 [Dart] Understand Classes and Inheritance in Dart
2016-08-25 [WebGL] Setting Up WebGL
2016-08-25 [Redux] Accessing Dispatch and State with Redux -- connect
2015-08-25 [Angular 2] 8. Better ES5 Code
点击右上角即可分享
微信分享提示