JavaScript之视频相关API

目录

  • 一、视频标签基本API
    • 1. play(开始)
    • 2.muted(静音)
    • 3. pause(暂停)
    • 4. volume(声音控制)
    • 5. webkitRequestFullScreen(全屏)
  • 二、视频标签进度条API
    • 1. 总时间API(duration)
    • 2.当前时间API(currentTime)
  • 二、进度条拉动效果

一、视频标签基本API

1. play(开始)

  当我们想在网页中想让视频播放的时候,需要通过一个button按钮来实现,,通过按钮的点击事件,然后让视频开始播放

startNode.onclick=function(){
needVideo.play();
}

2.muted(静音)

  当我们想打开网页的时候让视频自动播放,需要设置视频为静音状态。此时打开网页,视频会自动播放。

<video   muted></video>

3. pause(暂停)

  当我们想在网页中想让视频暂停的时候,也需要通过一个button按钮来实现,,通过按钮的点击事件,然后让视频开始播放。

pauseNode.onclick=function(){
needVideo.pause();
}

4. volume(声音控制)

  在网页中,声音控制需要通过volume来控制,volume的取值范围为0~1。

volumeNode.onclick=function(){needVideo.volume=this.value;
}

5. webkitRequestFullScreen(全屏)

  在网页中,全屏效果通过webkitRequestFullScreen来实现,同时这个也需要通过一个button按钮。

webkitNode.onclick=function(){needVideo.webkitRequestFullScreen();
}

  webkitRequestFullScreen也可以用来全屏图片和div盒子,但是很少用来将div盒子全屏。

二、视频标签进度条API

1. 总时间API(duration)

  当我们需要查看总时间的时候,只需要console.log当前视频的duration即可。也可以是在网页中放入一个盒子,通过innerHtml的形式来查看。

setTimeout(function(){console.log(needVideo.duration);
},50);

2.当前时间API(currentTime)

  当我们需要实时查看当前视频时间的时候,我们可以通过currentTime来查看。
方法1:我们可以通过定时器来查看,但是这种方法占用资源太多,但是非常简单。

setInterval(function(){console.log(needVideo.currentTime);
},50);

方法2:通过事件监听的方式

needVideo.addEventListener('timeupdate',funtion(){nowTime.innerText=needVideo.duration;   //nowTime是一个span;
});

二、进度条拉动效果

  进度条拉动效果是视频播放过程中常用的一个效果,当视频播放的时候,进度条会随着视频的播放而移动,同时我们拉动进度条的时候,视频进度也会跟着变动。

    var go = document.getElementById('go');needVideo.addEventListener('timeupdate', function () {nowTime.innerText = needVideo.currentTime;go.value = needVideo.currentTime / needVideo.duration * 100;}, 50);go.onmousedown = function () {needVideo.pause();}go.onmouseup = function () {needVideo.play();}go.oninput = function () {//总时间*百分比=当前时间needVideo.currentTime = needVideo.duration * (this.value / 100);}//全屏fullScreenNode.onclick = function () {if (needVideo.webkitRequestFullScreen) {//谷歌全屏needVideo.webkitRequestFullScreen();} else if (needVideo.mozRequestFullScreen) {//火狐全屏needVideo.mozRequestFullScreen();} else if (needVideo.msRequestFullScreen) {//IE全屏needVideo.msRequestFullScreen();} else if (needVideo.requestFullScreen) {//特殊格式needVideo.requestFullScreen();}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/630458.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt/QML编程之路:小键盘keyboard(36)

小键盘对于qml应用是经常用到的,在qml里面,就如一个fileDialog也要自己画一样,小键盘keyboard也是要自己画的,对于相应的每个按键的clicked都要一一实现的。 这里有一个示例: 代码如下: import QtQuick 2.5 import QtQuick.Controls 1.4 import QtQuick.Window 2.0 im…

yum仓库以及NFS共享

yum实现过程 1.光驱里自带yum 2.网络下载到本地 3.直接通过网络 如何实现安装服务 yum客户端找到yum服务端&#xff0c;找到yum的仓库位置&#xff0c;下载元信息&#xff0c;因为里面有软件的位置&#xff0c;因此可以找到软件包的位置&#xff0c;然后下载到本地 仓库的类…

25考研英语复习计划

Hello各位小伙伴大家好&#xff0c;今天要给大家分享的是英语备考计划&#xff0c;大家可以作为参考&#xff0c;制定适合自己的备考计划。 【英一/二】 英语分为英一、英二&#xff0c;一般学硕英一&#xff0c;专硕英二。 英一要比英二难度大。 【复习计划】 1-2月&#xf…

图深度网络浅层理解

图神经网络 1.输入&#xff1a; 图网络 2.输出&#xff1a; 节点类别、某两个节点的新连接、产生新的图或子图 3.端到端表示学习&#xff08;Representation Learning&#xff09;/图嵌入&#xff1a; 将节点映射为d维的向量&#xff0c;d维向量就包含了这个节点的连接关系…

H5小游戏如何提升APP变现收益?

在当前用户规模稳定但变现压力增加的背景下&#xff0c;开发者需要挖掘用户价值&#xff0c;提高营收&#xff0c;这成为开发者关注的重点话题。对于那些“用户用完即走”的APP产品来说&#xff0c;接入H5游戏能够吸引停留&#xff0c;为其带来收入上的增长。 一、什么是H5游戏…

小程序学习-17

attached最常用 推荐使用 lilfetimes 这种方法

springcloud Eureka服务注册与发现

文章目录 代码地址Eureka基础知识什么是服务治理什么是服务注册与发现 单机版eurekaServerIDEA生成eurekaServer端服务注册中心类似物业公司EurekaClient端cloud-provider-payment8001修改EurekaClient端cloud-consumer-order80 集群Eureka构建步骤新建cloud-eureka-server7002…

计算机找不到iutils.dll的5种有效的解决方法,一分钟教会修复dll问题

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中最常见的就是“某某文件丢失”或“某某文件损坏”&#xff0c;找不到iutils.dll就是其中之一。iutils.dll是一个系统级的动态链接库文件&#xff08;DLL&#xff09;&#xff0c;它是Windows操作系统…

grep 在运维中的常用可选项

一、对比两个文件 vim -d <filename1> <filename2> 演示&#xff1a; 需求&#xff1a;&#xff5e;目录下有两个文件一个test.txt 以及 text2.txt,需求对比两个文件的内容。 执行后会显示如图&#xff0c;不同会高亮。 二、两次过滤 场景&#xff1a;当需要多…

(一)ROS的安装

&#xff08;一&#xff09;安装ubuntu18.04 系统&#xff08;虚拟机或者是物理机&#xff0c;在此不再介绍&#xff09; &#xff08;二&#xff09;添加ROS镜像源 apt 列表中没有ROS源&#xff0c;所以要手动添加 sudo sh -c . /etc/lsb-release && echo "deb…

美易官方:Vision Pro上市在即‘高端体验与舒适度的权衡’

随着科技的不断进步&#xff0c;虚拟现实&#xff08;VR&#xff09;、增强现实&#xff08;AR&#xff09;和混合现实&#xff08;MR&#xff09;设备日益成为科技爱好者和专业人士关注的焦点。作为市场上备受期待的高端头显&#xff0c;Vision Pro即将在美国当地时间1月19日开…

在vite5和vue3开发环境中使用jodit4富文本编辑器,并添加自定义插件和使用highlight.js实现代码块高亮(附其他自定义配置项和全部代码)

最近富文本编辑器jodit终于更新发布到了4.0版本&#xff0c;加入了css变量、有更好的typescript支持&#xff0c;截止发文时的版本是&#xff1a;4.0.5&#xff0c;看到有了新版本于是便想着将本地项目中的jodit版本也进行升级&#xff0c;琢磨着再丰富和添加一些功能&#xff…

掌握Python 99 个实用实例,其中精选算法高频题目以及答案,助力求职Python工程师面试不慌拿offer

掌握Python 99 个实用实例&#xff0c;其中精选算法高频题目以及答案&#xff0c;助力求职Python工程师面试不慌拿offer。 Python由荷兰国家数学与计算机科学研究中心的吉多范罗苏姆于1990年代初设计&#xff0c;作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构&…

给机器人开发个功能让它帮我照看宝宝

本文首发于古月居 这篇博客主要讲述了如何通过OriginBot来看护宝宝&#xff0c;当宝宝的脸不在摄像头的范围之内时&#xff0c;发送消息到钉钉群组&#xff0c;通知家人及时查看。 前言 我在上个月有了宝宝&#xff0c;为了方便照看宝宝&#xff0c;就买了一个带有宝宝看护功能…

OpenLayers实战,OpenLayers点聚合有相同经纬度坐标时无法展开问题解决办法,当缩放级别达到一定等级后强行展开聚合为单个点

专栏目录: OpenLayers实战进阶专栏目录 前言 本章用于解决OpenLayers使用Cluster点聚合情况下,要素(Feature)出现有相同经纬度坐标时无法展开成单独图标的问题解决办法以及当缩放级别达到一定等级后强行展开聚合为单个点的功能。 本章展开后由于经纬度坐标还是同一个点,…

SAP 销售订单审批状态(查询/修改)

销售订单审批状态启用后&#xff0c;前端显示界面如下图 销售订单审批状态读取&#xff1a;STATUS_READ 销售订单审批状态修改&#xff1a;I_CHANGE_STATUS 销售订单审批状态读取 代码样例如下&#xff1a; DATA: lv_objnr TYPE vbak-objnr,lv_objnr_t TYPE jsto-objnr,l…

LeetCode:707. 设计链表

力扣题目链接 单链表 class ListNode {int val;ListNode next;public ListNode(int val) {this.val val;} } class MyLinkedList {int size;ListNode head;public MyLinkedList() {size 0;head new ListNode(0);}public int get (int index) {if ( index < 0 || index …

20/76-卷积,填充,步幅,多通道输入输出

19/76 卷积层总结 1、卷积层将输入矩阵和核矩阵进行交叉相关&#xff0c;加上偏移所得到输出。 2、核矩阵和偏移是可学习的参数。 3、核矩阵的大小是超参数。 import torch from torch import nndef corr2d(X, K): # 本函数已保存在d2lzh_pytorch包中方便以后使用,x是输入&a…

难道说 IT行业的下一个风口是鸿蒙开发吗?

按往年的习俗&#xff0c;在年底之季有很多HC都会缩减&#xff0c;尤其当下各种裁员的情况下&#xff0c;不管你是在哪个传统开发行业&#xff0c; 如&#xff1a;C/C、Java、前端、后端……等多少都会一股互联网寒流的影响。而今年却出现了一个怪现象&#xff0c;有个岗位在这…

微信小程序打包上线流程

微信公众平台 https://mp.weixin.qq.com/注册一个小程序账号&#xff08;小程序和公众号&#xff0c;服务号等&#xff0c;不互通&#xff09;按流程注册开发&#xff0c;开发设置&#xff0c;小程序ID 发布流程 4.微信开发者工具点击上传 5. 上传代码 6. 提交审核 7. 发布 在…