首页 > 编程语言 >原生js与微信小程序 控制<video>标签 视频播放倍率

原生js与微信小程序 控制<video>标签 视频播放倍率

时间:2024-08-06 20:16:21浏览次数:10  
标签:原生 倍率 微信 myVideo js 播放 speed

最近公司小程序有个需求 要求里面的视频可以让用户控制播放的倍率
需求很简单 但是要注意 在不同终端上 写法可能有些许区别
这里大家主要关注js的部分

原生js
html部分

<div id="box">
   <video id="myVideo" style="width: 100%;" controls
     src="https://cdrbonlinecourse.cdrb.com.cn/upload/mp4/171400903680674433667.mp4"></video>
   <div>
     请选择视频倍率:
     <div class="speed">
       <span onclick="changeSpeed(0.5)">0.5x</span>
       <span onclick="changeSpeed(1)">1x</span>
       <span onclick="changeSpeed(1.5)">1.5x</span>
       <span onclick="changeSpeed(2)">2x</span>
     </div>
   </div>
 </div>

js部分

function changeSpeed (speed) {
      let myVideo = document.getElementById('myVideo')
      myVideo.playbackRate = speed
    }

原生微信小程序
wxml部分

<view class="videoplay">
      <view>视频播放速率:</view>
      <view class="videoPlaySpeedBox">
        <view class="videoplayspeed {{videoSpeed == 0.5 ? 'selectSpeed' :''}}" data-speed="0.5" bindtap="switchVideoSpeed">0.5x</view>
        <view class="videoplayspeed {{videoSpeed == 1 ? 'selectSpeed' :''}}" data-speed="1" bindtap="switchVideoSpeed">1x</view>
        <view class="videoplayspeed {{videoSpeed == 1.5 ? 'selectSpeed' :''}}" data-speed="1.5" bindtap="switchVideoSpeed">1.5x</view>
        <view class="videoplayspeed {{videoSpeed == 2 ? 'selectSpeed' :''}}" data-speed="2" bindtap="switchVideoSpeed">2x</view>
      </view>
    </view>

js部分

switchVideoSpeed:function(e){
    var video = wx.createVideoContext('myVideo');  
    video.playbackRate(Number(e.target.dataset.speed)); // 设置播放速度
    this.setData({
      videoSpeed : e.target.dataset.speed
    })
  }

当然 原生的都会写了 vue自然也就不在话下了哈 我这里就不写了
本人写这篇文章的目的是记录 方便以后需要的时候直接用

标签:原生,倍率,微信,myVideo,js,播放,speed
From: https://www.cnblogs.com/ly5926/p/18345914

相关文章

  • JS历理 foot.js的部分功能
    document.writeln("<divid=\'outerdiv\'style=\'position:fixed;top:0;left:0;background:rgba(0,0,0,0.7);z-index:2;width:100%;height:100%;display:none;\'>");document.writeln("<divid=\'innerdiv\'s......
  • 编程深水区之并发②:JS的单线程事件循环机制
    如果某天有人问你,Node.js是单线程还是多线程,你如何回答?一、单线程并发原理我们以处理Web请求为例,来看看Node在处理并发请求时,究竟发生了什么。Node启动Web服务器后,创建主线程(只有一个)。当有一个阻塞请求过来时,主线程不会发生阻塞,而是继续处理其它代码或请求。如果阻塞......
  • jsp“云味坊”购物网站9u653
    jsp“云味坊”购物网站9u653本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表项目功能用户,商品分类,商品品牌,热销商品,促销商品技术要求:   开发语言:JSP前端使用:HTML5,CSS,JSP动态网页技术后端使用Spr......
  • jsp“云课堂”在线教育系统的设计与开发87j57
    jsp“云课堂”在线教育系统的设计与开发87j57本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表项目功能学生,教师,课程分类,课程信息,课程练习,问题提问,在线沟通技术要求:   开发语言:JSP前端使用:HTML......
  • jsp“永梦”无人售货机系统管理的设计与实现bt3q1
    jsp“永梦”无人售货机系统管理的设计与实现bt3q1本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表项目功能商品分类,补货员,维修员,用户,商品信息,设备报修,订单信息开题报告内容一、项目背景与意义随着科......
  • Spring Boot 中使用 JSON Schema 来校验复杂JSON数据
    JSON是我们编写API时候用于数据传递的常用格式,那么你是否知道JSONSchema呢?在数据交换领域,JSONSchema以其强大的标准化能力,为定义和规范JSON数据的结构与规则提供了有力支持。通过一系列精心设计的关键字,JSONSchema能够详尽地描述数据的各项属性。然而,仅凭JSONSchema......
  • 免费【2024】springboot 微信小程序反诈科普平台的设计与实现
    博主介绍:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌技术范围:SpringBoot、Vue、SSM、HTML、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数......
  • 基于Java Springboot广西文化传承微信小程序
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse+微信开发者工具数据库:MySQL5.7数据库管理工具:Navica......
  • 基于Java Springboot高校心理咨询微信小程序
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse+微信开发者工具数据库:MySQL5.7数据库管理工具:Navica......
  • 基于Java Springboot高校社团微信小程序
    一、作品包含源码+数据库+设计文档万字+PPT+全套环境和工具资源+部署教程二、项目技术前端技术:Html、Css、Js、Vue、Element-ui数据库:MySQL后端技术:Java、SpringBoot、MyBatis三、运行环境开发工具:IDEA/eclipse+微信开发者工具数据库:MySQL5.7数据库管理工具:Navica......