layui.open使用例子播放m3u8视频

阐述:

  • 最近项目需求,使用弹窗播放m3u8视频,本例子中使用了layui.open弹窗方式。
代码例子如下:
语法
layer.open(options)
  • layer.open 根据type不同,类型也就不一样,有五种类型:0(信息框,默认)1(页面层)2(iframe层)3(加载层)4(tips层)
  • 其实工作开发中用的最多的就是1、2这两种类型了,这里就只介绍这两种,其他的可以参考官网例子。

页面层(type:1) :弹出层展示的是某个定义好的页面元素

layer.open({
    type: 1 //Layer提供了5种层类型。可传入的值有:0(信息框,默认)1(页面层)2(iframe层)3(加                    
              载层)4(tips层),
    title: 'title here',   //标题
    area: ['390px', '330px'],   //宽高
    shade: 0.4,   //遮罩透明度
    content: $("#test"),//支持获取DOM元素
    btn: ['确定', '取消'], //按钮组
    scrollbar: false ,//屏蔽浏览器滚动条
    yes: function(index){//layer.msg('yes');    //点击确定回调
        layer.close(index);
        showToast();
    },
    btn2: function(){//layer.alert('aaa',{title:'msg title'});  点击取消回调
        layer.msg('bbb');//layer.closeAll();
    }
});

iframe层(type:2) :弹出层直接调用其他地方的页面

layer.open({
	  type: 2, //Layer提供了5种层类型。可传入的值有:0(信息框,默认)1(页面层)2(iframe层)3(加载层)4(tips层),
	  shade:0.1, //遮罩层透明度
	  area:['850px','500px'], //弹出层宽高
	  title:'材料库',//弹出层标题
	  content: 'xx/xx.jsp' //这里content是一个URL,如果你不想让iframe出现滚动条,你还可以content: ['http://sentsin.com', 'no']
	});
播放m3u8视频例子
 <!-- 引用m3u8视频插件 -->
    <link href="https://vjs.zencdn.net/7.4.1/video-js.css" rel="stylesheet">
    <script src='https://vjs.zencdn.net/7.4.1/video.js'></script>
    <script src="http://unpkg.com/videojs-contrib-media-sources@4.4.4/dist/videojs-contrib-media-sources.min.js"></script>
    <script src="./js/videojs/videojs-contrib-hlsjs.min.js"></script>
    <link rel="stylesheet" href="./css/base.css">
    <link rel="stylesheet" href="./css/agInte.css">

js部分

  • ${PointList[i].VideoSource} 视频地址
 var video_str = `
<div class="myVideo1">
    <video id="myVideo" class="video-js vjs-default-skin vjs-big-play-centered" controls preload="auto" data-setup='{}' style='width: 100%;height: auto'>
      <source id="source" src="http://1252093142.vod2.myqcloud.com/4704461fvodcq1252093142/48c8a9475285890781000441992/playlist.m3u8" type="application/x-mpegURL"/>
    </video>
  </div>
    `
layer.open({
   skin: 'yourclass',
     type: 1,
     closeBtn: 2,
     shadeClose: true,
     area: ['45%', '70%'],
     content: video_str,
     btn: ['播放', '取消'], //按钮组
     yes: function (index) {
         console.log('wdebug yes', index)
         var myVideo1 = document.getElementById('myVideo')
         console.log('wdebug yes2', myVideo1)
         // videojs 简单使用
         console.log(myVideo1)
         var myVideo = videojs(myVideo1,{
             bigPlayButton : true,
             textTrackDisplay : false,
             posterImage: false,
             errorDisplay : false,
         })
         myVideo.play() // 视频播放
         myVideo.pause() // 视频暂停
     }
 });
播放效果如下

在这里插入图片描述

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值