html5 video播放完切换画面方案

video标签播放视频 移动端不能自动播放 必须点击后才能播放

html5 video播放完切换画面方案
方法一

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="/js/jquery.min.1.8.3.js"></script>
</head>
<style>
    html,body{
        width:100%; height:100%;
    }

</style>
<body>

//播放只能全屏
<video id="video1" style="width:100%; height:100%;object-fit: fill;  display:none" src="http://mobile-show.cn/video/fromYou1.mp4"  webkit-playsinline=""></video>
<script>
      $(function () {
          $('body').bind('click',function () {
              $('#video1').css('display','block');
              $('#video1')[0].play();
          })
            //播放完跳转页面 才能彻底的切换画面
          $('#video1').bind('error ended', function(){
              window.location.href='http://www.baidu.com';
          })
      })
</script>










</body>
</html>

方法二 最靠谱的方法

<video id="video1" style="overflow: hidden; width: 100%; width: 100%; display: none; " src="/solosea1/mp4/cai.mp4"
       webkit-playsinline="true"  class="video" height="100%" playsinline="true"
       x5-video-player-type="h5" x5-video-player-fullscreen="true"></video>

这个播放完不会弹出广告 播放完直接display:none 当然dom元素也能覆盖 就是不能加背景 直接元素盖住他

切记不要加autoplay 加了下面事件会默认为播放处理的 其实他是不会自动播放的。。

demo如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="/js/jquery.min.1.8.3.js"></script>
</head>
<style>
    html, body {
        width: 100%;
        height: 100%;
    }

</style>
<body style="background: #FFF">


<video id="video1" style="overflow: hidden; width: 100%; width: 100%; display: none; " src="/solosea1/mp4/cai.mp4"
       webkit-playsinline="true"  class="video" height="100%" playsinline="true"
       x5-video-player-type="h5" x5-video-player-fullscreen="true"></video>


<script>
    $(function () {

        getvideoprogress();

        $('body').bind('click', function () {
            $('#video1').css('display', 'block');
            $('#video1')[0].play();
        })

        var vid = document.getElementById("video1");
        vid.onended = function () {
            $('#video1').css('display', 'none');
            alert("视频已播放完成");
        };

    })

    function getvideoprogress() {
        setTimeout(function () {
            var vid = document.getElementById("video1");
            var currentTime=vid.currentTime.toFixed(1);
            if(currentTime>=1.2){
                //触发
                return false;
            }
            console.log(currentTime);
            getvideoprogress();
        }, 50);
    }
</script>


</body>
</html>

第三种 这种适用于不是全屏播放有进度条的

  <video  src="{$yuming}/mp4/shipin.mp4"  controls="" x5-playsinline="" playsinline="" webkit-playsinline="" poster="" preload="auto"></video>

他这个可以直接display:none