资讯专栏INFORMATION COLUMN

ionic2手写制作video的控制栏,app

Gu_Yan / 2319人阅读

摘要:当前的播放进度条的宽度等于当前播放时间视频总长度。三点击进度条位置跳转到指定视频播放的位置鼠标在播放条上点击时进行捕获并进行处理播放





  
    
    
    
{{currentTime*1000 | date:"mm:ss"}}
{{ durationLength*1000 | date:"mm:ss" }}

试学结束,请购买后学习完整课程

**

一:控制视频播放暂停

**
//点击播放或者暂停
runPlay(){

this.myVideo = this.runtime.plugins.JQuery("#videoAttr");
if(this.myVideo[0].paused){
  this.myVideo[0].play();
  this.progressFlag = setInterval(() =>{
    this.getProgress();
  },1000);
  this.isPlay = true;//播放暂停按钮切换
  this.runtime.plugins.JQuery(".arrowback2").remove();

}else{
  //暂停播放
  this.myVideo[0].pause();
  clearInterval(this.progressFlag);
  this.isPlay = false;
}

}

二:试看功能,播放进度条功能

//获取进度条
getProgress(){

this.myVideo = this.runtime.plugins.JQuery("#videoAttr");
this.progressWrap = this.runtime.plugins.JQuery(".progressWrap");
this.playProgress = this.runtime.plugins.JQuery(".playProgress");
this.durationLength = this.myVideo[0].duration;
this.currentTime = this.myVideo[0].currentTime;
console.log("666",this.currentTime);
this.percent = this.currentTime / this.durationLength;      //获取视频播放到百分比
this.playProgress.width(this.percent * (this.progressWrap[0].offsetWidth));
//试看时间控制
if(parseInt(this.currentTime) == 1000){
  this.runtime.plugins.JQuery(".video-bg").css("display","block");
  this.myVideo[0].pause();
}

}
当前视频播放到10s后如果未购买,要购买才能看完整视频。
当前的播放进度条的宽度等于当前播放时间/视频总长度。

三:点击进度条位置 跳转到指定视频播放的位置

// 鼠标在播放条上点击时进行捕获并进行处理
videoSeek(e){

clearInterval(this.progressFlag);
this.progressWrap = this.runtime.plugins.JQuery(".progressWrap");
this.playProgress = this.runtime.plugins.JQuery(".playProgress");
var length = e.pageX - this.progressWrap[0].offsetLeft;
this.percent = length / this.progressWrap[0].offsetWidth;
this.playProgress.width(this.percent * (this.progressWrap[0].offsetWidth));
this.myVideo[0].currentTime = this.percent * this.myVideo[0].duration;
this.myVideo[0].play();//播放
this.progressFlag = setInterval(() =>{
  this.getProgress();
},1000);

}

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/92946.html

相关文章

  • ionic2实现透明状态和透明工具

    摘要:抽时间写了个,你想要的都在这里了。你可以狠狠的点击下面的链接去往仓库地址,一探究竟。你可以直接下来,直接运行。 ionic2实现透明状态栏和透明工具栏 目录 如何实现? 集成DEMO(2017/4/1更新) 简短的分析 一个额外的小栗子 我想让状态栏变色怎么办? 为什么这么做? 总结 以下是我的方案,不绕弯子,直接上实现过程.首先贴效果图,来张gif(2017/4/1更新)show...

    wenshi11019 评论0 收藏0
  • Ionic2入坑基础教程和安装指南

    摘要:安装程序主要通过命令行工具来创建和开发,并使用来构建和部署为原生应用程序。基础教程确保完成之前的安装并测试启动成功。 安装Ionic Ionic 2 程序主要通过Ionic命令行工具CLI来创建和开发,并使用Cordova来构建和部署为原生应用程序。也就是说我们需要先安装一些工具来实现程序开发。 安装Ionic CLI 和 Cordova 要创建 Ionic 2 项目,你需要安装最新版...

    jayce 评论0 收藏0
  • HTML5 video视频字幕使用和制作

    摘要:首先先看一下原生对字幕的支持显示情况元素允许我们使用元素为视频指定字幕。和忽略元素上的属性,而是尝试将浏览器的语言与字幕的语言相匹配案例展示参考资料张鑫旭文件生成器如果觉得还不错,还请给我一个赞鼓励一下 首先先看一下原生HTML5 video对字幕的支持显示情况: showImg(https://segmentfault.com/img/bV80HD?w=429&h=248); 元素 ...

    Rocko 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<