码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Vue——video标签实现不静音自动播放


    由于浏览器厂商为了提高用户体验禁止video标签可以有声的自动播放,也就是说如果想让video标签能够自动播放必须给video标签添加muted属性。

    但是在开发的过程中我们需要用视频自动有声播放,比如一些学习网站,需要老师或同学进入页面就可以播放学习视频,那么如何去实现呢?

    我是在Vue框架下实现的,其他框架仅供参考。

    首先我们要让video标签能够自动播放,也就是让video标签静音条件下自动播放。

    <video 
      ref="videoPlayer"
      id="videoPlayer"
      class="video" 
      width="100%" 
      autoplay 
      muted
      controls 
      :src="addPre()">
    video>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    然后是我们通过JavaScript的方式让video标签先取消静音然后再自动播放。

    this.$nextTick(() => {
      this.$refs.videoPlayer.muted = false;
      this.$refs.videoPlayer.play();
    })
    
    • 1
    • 2
    • 3
    • 4

    此方法我只在Vue框架下尝试可以,在其他框架没有尝试。

    此方法还需要注意的一点是如果此方法所在页面刷新或是从其他网站直接跳转到此页面则此方法就不管用了。

    如果是刷新或者是外部链接跳转到此则会报如下错误:

    Uncaught (in promise) DOMException: play() failed because the user didn’t interact with the document first.

    这个错误的意思是:play() 失败,因为用户没有先与文档交互。

    使用play方法之前用户必须得和文档(也就是页面进行)交互,刷新和从外部链接跳转都没有与页面进行交互。但是在Vue项目中从一个路由页面跳转到视频播放页面是可以的,这是为什么呢?

    因为Vue是单页面富应用,虽然我们看上去页面是从一个页面跳转到另一个页面但是这些路由页面始终在同一个文档(页面)中,当我们点击实现路由跳转时就已经实现了与文档交互,所以不会报上面的错。

  • 相关阅读:
    history.pushState 实际使用场景
    服务器数据恢复-ESX SERVER常见故障的数据恢复的可能性分析
    MySQL基础【学习至数据的导入导出】
    2022年java开发跑路-真实面试题
    80211 TIM流量指示图 附C语言实现
    融合黄金正弦与sigmoid连续化的海鸥优化算法-附代码
    基于大语言模型+RAG实现的日程管理
    Zookeeper如何实现Leader选举
    建造者模式 rust和java的实现
    口袋参谋:淘宝卡首屏玩法,1步高效拉升店铺免费流量!
  • 原文地址:https://blog.csdn.net/weixin_45566730/article/details/126519359
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号