详解如何使用JavaScript创建video原始播放器
通过使用HTML5新添加的video标签,在HTML中嵌入视频变得非常容易。
所以这一次我们来看一下如何使用video标签以及如何使用JavaScript轻松控制视频并创建一个原始播放器。
如何将video标签写入HTML5
用HTML5编写非常简单。指定视频有两种主要方法。作为最简单的方式,只需指定带有video标签和 src的视频,如下所示。
<video src="sample.mp4"></video>
另一种方法是指定多种格式的视频,如下所示,以便它们可以在各种浏览器环境中播放。
<video> <source src="sample.mp4"> <source src="sample.ogv"> <source src="sample.webm"> </video>
目前通过指定mp4格式的视频,可以在大多数最新的浏览器上播放,包括iPhone和Android,所以基本上只要mp4格式就可以了。
video标签的属性
上文中的例子只是简单的在video标签中指定了视频,所以不能直接播放。通过指定以下属性,可以指定基本设置,例如视频的自动播放和播放器的显示。
controls属性
通过指定controls,可以显示控制video播放的播放器。
<video src="sample.mp4" controls></video>
poster属性
通过在“poster”中指定图像,可以在播放视频之前显示缩略图。
<video src="sample.mp4" poster="first.jpg"></video>
autoplay属性
autoplay只需指定名称,就可以将视频设置为自动播放。
注意:在chrome和safari中,需要用muted属性将视频设置为静音,否则它不会自动播放。
<video src="sample.mp4" autoplay muted></video>
loop属性
通过指定“loop”,可以循环播放视频。
<video src="sample.mp4" loop></video>
preload属性
通过指定“preload”,可以在视频播放前预读数据,消除实际播放时的通信压力。可以指定三个值:auto、metadata、none。auto下载“整个视频数据”,而metadata只下载“视频大小、视频列表、播放时间等”的元数据。none指定在播放前不下载任何内容。
preload如果没有描述,则默认应用auto,所以如果视频播放不是重要的内容,可以指定none,避免给用户带来不必要的负担。
playinline属性
在iPhone等iOS中,播放视频时,默认会启动一个单独的窗口并播放视频,但从iOS 10开始,playsinline属性可以让视频在小窗内播放,即不全屏播放。
但是,要进行内嵌播放,autoplay、muted、playsinline三个属性是必需的。
<video src="sample.mp4" playsinline autoplay muted></video>
如何指定video标签的播放范围
在video标签中,通过在视频文件名后面写“#t=5,10”,可以指定播放范围,格式为“从第5秒到第10秒播放”。
<video src="sample.mp4#t=5,10" autoplay muted></video>
通过使用JavaScript操作video标签来创建原始播放器
使用video标签,您可以通过简单的JavaScript(也可以使用 jQuery)来控制播放、停止等。
操作方法很简单,只需要在html中创建一个合适的按钮,在JavaScript中给按钮点击分配一个已有的方法(指令)即可。
这次,通过一个简单的例子,我将解释如何操作“播放”、“暂停”、“停止”、“音量控制”和“音量显示”。
HTML代码
第一个是HTML代码。如上所述,使用video 标签指定视频并添加一个简单的按钮来控制它。
<video id="video01" src="movie.mp4"></video> <div id="play">播放</div> <div id="stop">暂停</div> <div id="atama">停止</div> <div id="vol-up">音量+</div> <div id="vol-down">音量-</div> <div id="mute">静音</div> <p>音量:</p> <div id="vol"></div>
JavaScript代码
接下来是JavaScript的编写。我们按照jQuery中的规范方法在video标签中指定视频文件的ID转换为变量后,只需为每个按钮的点击事件指定“play()、pause()”等方法即可。
<script src="https://code.jquery.com/jquery-3.3.1.js"></script>
<script>
$(function(){
// 指定要操作的视频
var video = $('#video01').get(0);
// 播放视频
$('#play').click(function(){
video.play();
});
// 暂停视频
$('#stop').click(function(){
video.pause();
});
// 视频位置(移动到任意秒)
$('#atama').click(function(){
video.currentTime = 0; //可以设置视频移动到输入秒的位置(例如0秒)
});
// 视频静音
$('#mute').click(function(){
video.muted = video.muted ? false : true;
});
//音量+
$('#vol-up').click(function(){
if(video.volume <= 0.75){
video.volume = video.volume + 0.25;
$("#vol").text(video.volume);
}
});
//音量-
$('#vol-down').click(function(){
video.volume = video.volume - 0.25;
$("#vol").text(video.volume);
});
//当前音量
$("#vol").text(video.volume);
});
</script>
JavaScript代码到此结束。
通过以上的方法可以简单地用JavaScript控制video标签的视频,之后可以通过使用CSS和图片做成自己原创风格的播放器界面。
本文来源:词雅网
本文地址:https://www.ciyawang.com/html-video.html
本文使用「 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 」许可协议授权,转载或使用请署名并注明出处。
相关推荐
-
如何使用JavaScript跳转到另一个页面
使用window.location属性跳转到另一个页面。让我们看一下基础知识和一些实际示例。关于 window.location 属性window.location 属性返回一个 Location 对...
-
JavaScript编程语言中的变量和声明:存储和重复利用数据的关键
编程语言中有一个功能叫做变量,它可以用于存储各种数据,并在需要时进行重复利用。本文将介绍变量的作用和变量声明。在编写程序时,对变量的处理是必要的知识,因此让我们充分理解什么是变量。变量变量是指为不同类...
-
如何使用length函数在JavaScript中计算字符串长度
在JavaScript中,字符串是一种常见的数据类型。当我们处理字符串时,经常需要知道字符串的长度。JavaScript提供了一个内置函数——length函数,可以用来计算字符串的长度。length函...
-
使用JavaScript获取selectbox中的所有值
我正在编写示例代码以获取 javascript 中选择框中的所有值。使用目标选择框的属性“options”将其获取为“HTMLCollection”,然后将其排列并进行循环处理。获取所有值要获取选择框...
-
使用JavaScript确定日期和时间在多少小时内
在 javascript 中,我编写了一个示例代码来确定日期和时间是多少小时。可以通过获取日期和时间差的绝对值来确定。 确定日期和时间在多少小时内...
-
获取JavaScript数组的偶数和奇数元素
我正在编写示例代码以在 javascript 中获取数组的偶数和奇数元素。我认为最简单的方法是使用“filter”来确定索引号是偶数还是奇数。 获取偶数/奇数元素...
-
使用JavaScript代码实现URL获取#号后的值
在javascript中,我编写了一个示例代码以从任何URL调用URL片段的“#”之后获取值。 使用“lastIndexOf”和“slice”获取它。...
-
JavaScript错误“Uncaught TypeError: xxx.replace is not a function”的解决方法
javascript报错“Uncaught TypeError: xxx.replace is not a function”的原因及解决方法。 在字符串以外的对象上使用...
-
使用JavaScript代码判断指定日期是否在多少天之内
编写一个示例代码来确定日期在javascript中的天数。可以通过计算从UTC时间1970年1月1日开始的经过时间的差值换算成天数,求出绝对值来判断。...
-
使用JavaScript检查浏览器当前选项卡是否被切换
在javascript中,我写了一个示例代码,用于判断当前选项卡是否已经切换。 用“visibilitychange”获取页面显示状态的事件,用“visibilitySt...
词雅网