效果图:
我这个是引入js的方式播放的。也可以用npm直接下载hsl.sj进行引入
1.public里面index.html页面引入对应的js
<script src="./jquery.min.js"></script>
<script src="./ezuikit.js"></script>
<script src="./hls.min.js"></script>
<script src="./jsPlugin-1.2.0.min.js"></script>
这些js太多了,私信我挨个发给你们
2,页面代码,也没什么,就一个for
<div v-for="i in tableData" :key="i.index" >
<video
:id=i.id
autoplay
:src=i.location
controls
playsInline
muted
webkit-playsinline>
</video>
</div>
autoplay: 自动播放。
controls: 显示基本的控件。暂停、播放、进度条、等等
playsInline,webkit-playsinline:全屏播放控件
muted:兼容自动播放,有限浏览器不能自动播放就加这个属性
3,调接口
返回的数据格式是这样的,只要id和location就可以了。定义两个数组,一个数组转id和location。另一个数组只装id。用来停止播放的
methods: {
searchs(currpage,pagesize){
this.$axios.get(this.url 'listByAgencyCode',{params}).then( data=>{
if(data.data.success){
this.ids=[];// 置空ids中的内容
let result = data.data.data;
this.tableData = result.list;//页面上循环的对象数组 (格式:[{},{},{}])
this.totals = result.total;
this.tableData.map((v,i) =>{
this.tableData[i].id = "myPlayer_" v.id;
})
for(let i=0,l = this.tableData.length;i<l;i ){//重新定义一个数组只装id
this.ids.push(this.tableData[i].id);
}
}
});
// 延时渲染视频
this.renderVedio();
},
renderVedio(){
setTimeout(()=>{// 初始化视频
this.players = [];
for(var j=0;j<this.ids.length;j ){
let player = new EZUIKit.EZUIPlayer(this.ids[j]);
this.players.push(player);
}
},2000);
},
}
//销毁视频
destroyed () {
for(var j=0;j<this.players.length;j ){
this.players[j].stop();
}
}
有什么写错的还请指正。
没了,结束了,是不是很简单呐,如有问题,欢迎留言。
如果此篇博文对您有帮助,还请动动小手点赞 收藏 ⭐留言 呐~,谢谢 ~ ~
- 荣耀30详细参数有没有红外(买它真的是交智商税吗)
- b站开屏广告在哪里回看(恼人不休的App开屏广告)
- 新版微信支付24小时到账怎么设置(转账到账时间记得要设置)
- 网易云专辑单曲购买(限购付费数字专辑及单曲)
- 炉石传说怎么查看比赛(“足不出户享受竞技”五万人黄金线上赛9月27日开战)
- 58同城租房没有房产证怎么发布(是要付费吗)
- 网易云如何更换模式(网易云新功能·浪漫模式)
- 奥运赛项目日程(“复活赛”赛制将正式启用)
- 12厘米弹珠(童年的记忆-弹珠精美图片)
- 天府机场到新南门车站地铁(2022成都地铁规划)
- 自己的照片像哪位明星(刘晓庆左右脸不对称)
- 花呗账单分期怎么减少了(大量年轻人陆续关闭花呗)
- 迷你世界哪最容易找西瓜(烈日炎炎全自动瓜田)
- 微信群机器人群主能盈利吗(一个多月获利23000)
- 小米11ultra背屏使用动态图(冰墩墩)
- 排名
- 软件
- 人气
- 下载