H5 video自定义视频控件

1.自定义效果截图

2.效果源码

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>H5 video自定义视频控件</title>
        <style>
            * {
                   margin: 0;
                   padding: 0;
            }
            .box {
                background-color: #000;
                position:relative;
                display: inline-block;
                color: #fff;
                left: 50%;
                margin-left: -300px;
            }
            .controls {
                position: absolute;
                bottom: 3px;
            }
            input[type="button"]{
                background-color: cornflowerblue;
                color: #fff;
                border: none;
                padding: 5px 10px;
                cursor: pointer;
            }
            #rangebar {
                width: 200px;
                height: 5px;
                border: 1px solid #ccc;
                margin-top: 3px;
                display: inline-block;
            }
            #rangebar>p {
                width: 0%;
                height: 100%;
                background-color: blueviolet;
            }
            #progress {
                vertical-align: middle;
            }
        </style>
    </head>
    <body>
        <div class="box">
            <video src="http://data.video.qiyi.com/videos/other/20170714/98/41/1d9d8d069dc4f8c2e070c888d53aa197.mp4?pv=0.2" width="600" height="450" poster="">
                您的浏览器不支持 video 标签。
            </video>
            <div class="controls">
                <input type="button" value="播放" id="play"/>
                <input type="button" value="暂停" id="pause"/>
                <input type="button" value="快进" id="speed"/>
                <input type="button" value="快退" id="back"/>
                <input type="button" value="静音" id="mute"/>
                <input type="button" value="全屏" id="fullscreen"/>
                <a href="http://data.video.qiyi.com/videos/other/20170714/98/41/1d9d8d069dc4f8c2e070c888d53aa197.mp4?pv=0.2" download="广告视频">
                    <input type="button" value="下载" id="download"/>
                </a>
                VOICE:<input type="range" id="progress" value="30" min="0" max="100"/>
                <br/></br.>视频进度:<div id="rangebar">
                    <p></p>
                </div>
            </div>
        </div>
        <script>
            var video = document.getElementsByTagName("video")[0];
            play.onclick=function(){
                video.play()
            }
            pause.onclick=function(){
                video.pause()
            }
            speed.onclick=function(){
                video.currentTime += 5;
                console.log(video.currentTime);
            }
            back.onclick=function(){
                video.currentTime -=5;
                console.log(video.currentTime);
            }
            mute.onclick = function(){
                video.muted = true;
                progress.value=0;
            }
            fullscreen.onclick=function(){
                video.webkitRequestFullscreen();
            }
            /* *视频播放进度*
             * 获取视频总时长 video.duration
             * ........当前播放位置 video.currentTime
             * 进度条p的宽度:(video.currentTime/video.duration)*100+‘%‘
             * */
            var timer = setInterval(function(){
                rangebar.getElementsByTagName("p")[0].style.width=(video.currentTime/video.duration)*100+‘%‘;
            },100);

            //音频大小
            progress.onmousemove = function(){
                video.volume = this.value/100;
            }
        </script>
    </body>
</html>
时间: 2024-10-07 06:06:25

H5 video自定义视频控件的相关文章

android--------自定义视频控件(视频全屏竖屏自动切换)

android播放视频也是常用的技术,今天分享一个自定义视频控件,支持自定义控制 UI,全屏播放, 可以实现自动横竖屏切换的控件,跟随手机的位置而,重力感应自动切换横竖屏. 效果图:   代码下载Github:https://github.com/DickyQie/android-video 原文地址:https://www.cnblogs.com/zhangqie/p/8487734.html

h5 的video视频控件

h5 的video视频控件 由于html5的流行,其中的video视频的使用很流行,使得可恨的IE9也能与时俱进了. video所支持的格式有mp4.ogg和wav三种. 例: HTML5 Video基础标签 ` <video id="myVideo" controls poster="video.jpg" width="640" height="320" > <source src="video.

可以创建专业的客户端/服务器视频会议应用程序的音频和视频控件LEADTOOLS Video Conferencing SDK

LEADTOOLS Video Streaming Module控件为您创建一个自定义的视频会议应用程序和工具提供所有需要的功能.软件开发人员可以使用Video Streaming Module SDK,通过一些不同的配置来创建一些客户端/服务器应用程序.例如,如果有一个服务器需要向多个客户端发送音频/视频数据,那么就可以在服务器上创建这样的应用程序,比如多点传送或Web广播中的web多点传播.此外,当有多个捕捉点向一个源发送视频数据时,您可以创建安全/监控应用程序. 产品特征: 视频会议二进制

自定义组合控件,适配器原理-Day31

自定义组合控件,适配器原理-Day31 mobile2.1 主页定义 手机上锁功能 1.弹出设置密码框. 手机下载进度 自定定义控件 控件的属性其实就是控件类一个属性设置属性调用类的set方法方法, 自定义组合控件的思路 生命一个View对象继承自相对布局,线性布局或者其他的ViewGroup 在View对象重写构造方法,然后初始化布局,通过View.inflate()方法把我们自己定义的布局挂到界面当中. 自定义属性在res/values目录下创建attrs.xml里面定义一些属性, <res

cocos2d-x视频控件VideoPlayer的用户操作栏进度条去除(转载)

目前遇到两个问题: (1)视频控件移除有问题,会报异常. (2)视频控件有用户操作栏,用户点击屏幕会停止视频播放. 对于第一个问题,主要是移除控件时冲突引起的,目前简单处理是做一个延时处理,先stop视频播放,然后一个Action移除自身,如下: local function onComplete() video:stop() video:runAction( cc.Sequence:create( cc.CallFunc:create(callback), cc.RemoveSelf:crea

(八)ASP.NET自定义用户控件(1)

http://blog.csdn.net/laodao1/article/details/5897366 ASP.NET自定义控件组件开发 第一章:从一个简单的控件谈起 起始开发ASP.NET自定义控件不是那么的高深,当初我开始学的时候还有点恐惧,但是慢慢就好了.学习控件的开发技术,并不一定说以后要从事控件的开发,而是让我们深入的理解掌握ASP.NET内部的机理.你会发觉,当学习完控件开发技术后,你以后开发网站时有种得心应手的感觉.我不希望一上来就讲控件开始多么多么难啊,我会用一个演化的方法来讲

cocos2d-x视频控件VideoPlayer的用户操作栏进度条去除

cocos目前出了新的视频播放器控件,仅支持ios和android平台,不支持window平台.项目打算使用一段视屏片头,所以使用该视频控件来播放片头. 目前遇到两个问题: (1)视频控件移除有问题,会报异常. (2)视频控件有用户操作栏,用户点击屏幕会停止视频播放. 对于第一个问题,主要是移除控件时冲突引起的,目前简单处理是做一个延时处理,先stop视频播放,然后一个Action移除自身,如下: local function onComplete() video:stop() video:ru

NVisionXR_iOS教程十 —— 加载视频控件

因为在下一章节我们需要和大家介绍多场景切换功能,所以在本章我们创建一个新的场景,如下图  重写NVScenePlay的生命周期  1.引用头文件#import ''NVVideoWidget.h''  2.在onCreate方法中实例话视频控件  代码:     video = [[NVVideoWidget alloc] initWithScenePlay:self WidgetName:@"video_widget"];      // 添加视频路径,可以是本地路径,也可以是网址(

Android自定义控件之自定义组合控件(三)

前言: 前两篇介绍了自定义控件的基础原理Android自定义控件之基本原理(一).自定义属性Android自定义控件之自定义属性(二).今天重点介绍一下如何通过自定义组合控件来提高布局的复用,降低开发成本,以及维护成本. 使用自定义组合控件的好处? 我们在项目开发中经常会遇见很多相似或者相同的布局,比如APP的标题栏,我们从三种方式实现标题栏来对比自定义组件带来的好处,毕竟好的东西还是以提高开发效率,降低开发成本为导向的. 1.)第一种方式:直接在每个xml布局中写相同的标题栏布局代码 <?xm