拖拽和自定义播放器

今天用到了拖拽,这个是在h5中的,拖拽其实拖得是标签,把标签当做一个全局变量,你想拖到哪儿就拖到哪儿,我们知道的标签中的img是默认支持拖拽的,所以不要设置属性,但其他的就要设置一个属性才能实现拖拽:

必须要有draggable=true才能实现.

拖拽一般是结合js使用的,光听意思就知道拖拽是动作了,它有几个注册事件:

1:开始拖拽时,是开始拖拽是的状态:

2:有开始就有结束:

他们两个其实很好记,就一个单词不一样,一个是start一个end,他们本身的意思就是一个开始一个结束的意思.

一般标签元素是不支持拖拽的,所以在拖拽的过程中,我们要阻止默认行为,用到一个:

这个是不能漏掉的.

接下来就可以实行拖拽过程了:

直接把要拖拽的元素添加到你要拖拽去的地方就可以了.下面style是根据自己需要设置的属性.

requestFullScreen是全屏的意思,在h5中我们可以把你想要那个元素的内容设置为全屏,但这个属性兼容性不是太好,一般要写前缀,它用的来非常简单,注册个点击事件,一点就全屏就可以了,它主要的就是兼容不好,注意一定要写以下代码避免兼容性不好:

在h5中我们之前用的是默认的标签播放器,其实我们也可以自己设置播放器,

这里这个播放器就是自己设置的,它就左上角用到video,其他的都是div,a标签等组成的,这样就可以实现灵活多变,你想做成什么样的就什么样的,这里大概分成这几部分,大框架,左右两个,然后左边又分成三块.总共就四块组成,

左边第一块:就是一个video标签,路径写视频路径就可以了.

左边第二块:是一个进度条,<input type=”range”>

左边第三快:是一些控制键,这里控制键是用js做的,从网上下载图标,然后利用js和h5的属性来做:

开始键:

暂停键:

全屏就是上面说的那样,只是给他加个点击事件就行.

进度条有点麻烦,这里用到一个视频播放事件,ontimeupdata:

1:先获得视频的播放进度.进度其实就是一个百分比.因为进度条值是0到100.

2:再把播放进度赋值给进度条的值,所以要乘以100

控制进度条来控制视频的播放其实就是上面的反过来:

1:先把控制条当前位置除以100,求百分比:

2:求出视频当前的进度:

3:赋值给video的currentTime属性就可以了:

这样第二块进度条就完成了,然后就剩右边的列表了,用来切换列表,这里我们写html时用到data-name这种写法:

循环所有a标签,然后拿到a标签中的电影信息,再设置给video的src属性:

主要就是拿电影的信息:

做到这里,我们自定义播放器的框架就完成了,然后就根据各自的要求来完善你想要的播放器.

时间: 2024-10-12 10:35:54

拖拽和自定义播放器的相关文章

基于 AVPlayer 自定义播放器

如果我只是简单的播放一个视频,而不需要考虑播放器的界面.iOS9.0 之前使用 MPMoviePlayerController, 或者内部自带一个 view 的 MPMoviePlayerViewController.  iOS9.0 之后,可以使用 AVPictureInPictureController, AVPlayerViewController, 或者 WKWebView. 以上系统提供的播放器由于高度的封装性, 使得自定义播放器变的很难. 所以,如果我需要自定义播放器样式的时候,可以

使用html5中video自定义播放器必备知识点总结以及JS全屏API介绍

一.video的js知识点: controls(控制器).autoplay(自动播放).loop(循环)==video默认的: 自定义播放器中一些JS中提供的方法和属性的记录: 1.play()控制视频的播放 2.pause()控制视频的停止 3.currentTime控制视频的当前时间 4.muted控制视频是否静音(赋值true or false) 5.volume控制音量的大小(赋值0-1) 6.duration视频的总时间 7.ontimeupdate事件(当前播放位置改变时执行,使用时

基于&lt;MediaElement&gt;的WPF视频播放器(可拖拽进度条播放)

一.前言       前两天上峰要求做一个软件使用向导,使用WPF制作.这不,这两天从一张白纸开始学起,做一个播放演示视频的使用向导.以下是粗设计的原型代码: 二.效果图 三.代码 前台代码: 1 <Window 2 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 3 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

手机影音第六天 自定义播放器页面的实现(按钮暂时未监听)

目前进度的项目源代码托管在里码云上,地址如下: https://git.oschina.net/joy_yuan/MobilePlayer 感兴趣的可以去下载看看,多多支持 这次就摒弃了系统自带的控制栏,即之前写的通过系统自带的控制栏 videoview.setMediaController(new MediaController(this)); 转而自己写控制器布局,实际截图如下: 效果图: 一.Activity的声明周期重温与横竖屏切换时的问题 有2个页面,A页面,B页面,下面括号里的A,B

h5自定义播放器得实现原理

1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 <!--插入播放按钮得文字图标格式(具体使用方法可以百度http://fontawesome.dashgame.com/)--> 7 <link rel="stylesheet&

Android 自定义播放器

如果自己写播放器的话 肯定首先要考虑到播放时间 和 进度条刷新的问题 至于播放和 暂停 就是简单的调一下API而已 // 直播回放 时间 进度条更新 case UPDATE_TIME: int progress = control_seekbar.getProgress(); control_play_time.setText(StringUtils .generateTime(progress * 1000) + "/" + StringUtils.generateTime(tota

H5拖拽事件-- 自定义创建a标签热区

有两个BUG未更正, 1.拖拽后,动态创建的div始终在鼠标的下方,导致拖拽定位不准确 2.当窗口为自适应时,定位left为百分比,窗口改变大小时会存在定位偏差 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script src="./jquery-1

Android中使用SurfaceView+MediaPlayer+自定义的MediaController实现自定义的视屏播放器

效果图如下: (PS本来是要给大家穿gif动态图的,无奈太大了,没法上传) 功能实现:暂停,播放,快进,快退,全屏,退出全屏,等基本功能 实现的思路: 在主布局中放置一个SurfaceView,在SurfaceView中放置一个MediaPlayer ,在其下方自定义一个MediaController,不过也不能称之为MediaController,使用的是PupupWindow来实现的,在PupupWindow布局中放置几个textView,Button,最重要的使我们的SeekBar控件,创

使用VideoView自定义一个播放器控件

介绍 最近要使用播放器做一个简单的视频播放功能,开始学习VideoView,在横竖屏切换的时候碰到了点麻烦,不过在查阅资料后总算是解决了.在写VideoView播放视频时候定义控制的代码全写在Actvity里了,写完一看我靠代码好乱,于是就写了个自定义的播放器控件,支持指定大小,可以横竖屏切换,手动左右滑动快进快退.好了,下面开始. 效果图 效果图有点卡,我也不知道为啥..... VideoView介绍 这个是我们实现视频播放最主要的控件,详细的介绍大家百度就去看,这里介绍几个常用的方法. 用于