• 端午将至,我们更加要严格自律,不能趁过节之际搞吃喝送礼、公车私用、公款旅游等,要严防不正之风反弹回潮。做好自己的分内之事,安分守己,加强自我管理和监督,严格遵守 2019-07-21
  • An advance booking of two hours can be made for Yangtze River Cableway tickets - Chongqing News - CQNEWS 2019-07-17
  • 大学毕业生永远不过剩,这是民族素质问题 2019-07-17
  • 这种利用能实现国民财富增长么?有哪一个民族是靠炒作自己人崛起的? 2019-07-13
  • 地月高清合影!嫦娥四号中继星任务国际合作成果发布 2019-07-12
  • 那是当然。我国的两弹一星都是在公有制企业里搞出来的。 2019-07-12
  • 传统端午节 浓浓邻里情 2019-06-27
  • 人民网舆情分析专家:韩长青 2019-06-13
  • 2017内蒙古自治区学习十九大精神嵌套页面--内蒙古频道--人民网 2019-06-12
  • 地震最新消息:云南普洱市澜沧县发生3.0级地震 2019-06-10
  • 图解:高校体育 竞技体育的“基石” 群众体育的“排头兵” 2019-06-10
  • 苗山脱贫影像志——父母在 不远行 2019-06-07
  • 税费“红包”助推高质量发展 2019-06-03
  • 网络舆情参考(2018年第21期 总第320期) 2019-05-27
  • 大型煤企保供限价难阻煤价逼近700元吨 车等煤频现 2019-05-27
  • video标签设置autoplay在手机浏览器无法自动播放视频的解决方案

    2019-05-27 网页设计
    • 文章介绍
    在video标签上加个autoplay属性,在PC端浏览器里面运行流畅,但是在手机浏览器里面打开无法播放。原来现在的手机浏览器是不允许网页中视频自动播放的,只有与用户进行了一次交互动作,才可以播放视频。(音频同理)
     
    方案一:在页面上加一个弹框,用户点击了弹框之后(相当于一次交互完成),开始播放视频,发现是可以播放的,部分代码如下:
     
    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <meta name="viewport"
            content="initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no, width=device-width">
      <title>跟版网-视频自动播放</title>
      <style>
        html, body {
          width: 100%;
          height: 100%;
        }
        .video-container {
          width: 300px;
          height: 600px;
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: center;
          overflow: hidden;
          margin: 0 auto;
        }
        #video {
          display: block;
          width: 100%;
        }
        #mask {
          width: 100%;
          height: 100%;
          background: rgba(0, 0, 0, 0.83);
          position: absolute;
          top: 0;
          left: 0;
          z-index: 2;
          display: flex;
          flex-direction: row;
          justify-content: center;
          align-items: center;
        }
        .pop-container {
          width: 250px;
          height: 200px;
          background: white;
          border-radius: 5px;
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
        }
        button {
          width: 50px;
          height: 30px;
          border-radius: 4px;
        }
      </style>
    </head>
    <body>
    
    <div class="video-container">
      <video id="video" src="video.mp4"></video>
    </div>
    <div id="mask">
      <div class="pop-container">
        <p>页面内有自动播放视频 请注意流量</p>
        <button onclick="playVideo()">我知道了</button>
      </div>
    </div>
    <script>
      function playVideo() {
        document.getElementById('mask').style.display = 'none';
        var video = document.querySelector('#video');
        video.play();
      }
    </script>
    </body>
    </html>
     
    方案2:使用jsmpeg.js
     
    jsmpeg是一款视频解码器,具体怎么用,可以百度相关文档,实话说我对此也不熟悉,第一次听见的时候是听说jsmpeg可以实现网页端的视频直播功能,这一次用来解决视频自动播放的需求也是借鉴别人的想法。
    关键代码如下:(前提:项目中已经引入了jsmpeg.min.js)
     
    <canvas id="canvas" height="750" width="750"></canvas>
    页面加载完成的时候执行下面的js代码:
    var canvas = document.querySelector('#canvas');
    // 注意这里需要将video.mp4转换成ts格式的文件 才能生效
    var player = new JSMpeg.Player('video.ts', { canvas: canvas, loop: false, autoplay: false, audio: true });
    player.audioOut.unlock(this.onUnlocked);
    player.play();
    
    //  onUnlocked方法
    function onUnlocked() {
        player.volume = 1;
    }
     
    这样即使不跟用户产生交互 视频也能自动播放了,
    注意点
    1.demo必须放在服务器上面跑才能正常加载ts文件,如果是在本地的话,不能直接拖进浏览器运行,需要起个本地服务器
    2.ts文件编码方式必须为MPEG编码,考虑到现在先进的ts编码方式是H.264了,之前用H.264编码的ts发现播放不了
    存在的问题
    1.这样播出的视频是没有声音的
     

    上一篇:织梦DedeCms做SEO优化必做的步骤

    下一篇:js 判断字符串中是否包含某个字符串

    专业的织梦模板定制下载站,在线购买后即可下载!

    商业源码

    跟版网模板,累计帮助5000+客户企业成功建站,为草根创业提供助力!

    立刻开启你的建站之旅
    QQ在线客服

    服务热线

    织梦建站咨询
  • 端午将至,我们更加要严格自律,不能趁过节之际搞吃喝送礼、公车私用、公款旅游等,要严防不正之风反弹回潮。做好自己的分内之事,安分守己,加强自我管理和监督,严格遵守 2019-07-21
  • An advance booking of two hours can be made for Yangtze River Cableway tickets - Chongqing News - CQNEWS 2019-07-17
  • 大学毕业生永远不过剩,这是民族素质问题 2019-07-17
  • 这种利用能实现国民财富增长么?有哪一个民族是靠炒作自己人崛起的? 2019-07-13
  • 地月高清合影!嫦娥四号中继星任务国际合作成果发布 2019-07-12
  • 那是当然。我国的两弹一星都是在公有制企业里搞出来的。 2019-07-12
  • 传统端午节 浓浓邻里情 2019-06-27
  • 人民网舆情分析专家:韩长青 2019-06-13
  • 2017内蒙古自治区学习十九大精神嵌套页面--内蒙古频道--人民网 2019-06-12
  • 地震最新消息:云南普洱市澜沧县发生3.0级地震 2019-06-10
  • 图解:高校体育 竞技体育的“基石” 群众体育的“排头兵” 2019-06-10
  • 苗山脱贫影像志——父母在 不远行 2019-06-07
  • 税费“红包”助推高质量发展 2019-06-03
  • 网络舆情参考(2018年第21期 总第320期) 2019-05-27
  • 大型煤企保供限价难阻煤价逼近700元吨 车等煤频现 2019-05-27
  • 腾讯分分彩是官方开奖吗 湖南快乐十分平台 一波中特猪在家打一生肖 极速飞艇历史记录开奖数 3d今天是组三吗 内蒙古快3今天的预测分析 江西时时彩前三 广西快乐双彩复式多少钱 2012体育彩票销售 多乐彩票网址 qq游戏欢乐升级玩法 新疆25选7的开奖号 澳洲幸运10是真的吗 23日前三组选开奖结果 棋牌游戏人物图片