王者地带
王者地带
  • 发布:2017-12-04 11:48
  • 更新:2022-07-14 22:12
  • 阅读:55921

分享一个Html5+video 基于mui 5+的视频播放器

分类:HTML5+

一直没有找到一款适合在MUI上的播放器,网上很多都是基于JQ的播放,样式不好看,也难修改,不好用难于兼职安卓和苹果手机,
实在没办法,只能亲自操刀,自己写一个播放器了,给遇到我一样情况的朋友们,封装起来只直调用,大家可以自由修改

没有测试过,当网络缓慢时,视频加载出现加载提示框,有遇到问题的小伙伴,可以分享处理经验

新增:手势控制 左边上下滑动控制音量,右边上下滑动控制亮度, 左右滑动 控制前进后退, 可以播放m3u8格式视频

20180517:新增: 支持点击播放就全屏播放视频, 支持在浏览器和微信上播放视频,支持使用IOS系统自带的播放器,大家可以根据自己的需求设置

20180620:支持同一个页面切换视频的方法,新增可以禁止拖动调节,音量和亮度,是否显示全屏按钮, IOS支持强制全屏播放

**20180913:修复IOS对.m3u8 视频的兼容性

运行环境: MUI 5+ 和浏览器或微信

微信扫一扫,可以浏览微信里视频播放例子

  1. android, 要开启硬件加速,manifest.json文件加 "hardwareAccelerated":true
    
    "google": {       
       "hardwareAccelerated":true  
             }  

或者创建文件时加
// true表示开启Webview的硬件加速,false表示关闭Webview的硬件加速
var webview = plus.webview.create( "url", "id",{hardwareAccelerated:true});
webview.show();

2. IOS iphone, 加 "allowsInlineMediaPlayback": true 禁止视频自动弹出播放,去掉原生播放控件
```javascript  

"plus":{  
    "allowsInlineMediaPlayback": true  
}  

3.调用

//#video_Container 是视频区域DIV的ID  

       //初始化插件  
var htmlvideo=Html5video("#video_Container",  
{  
 title:"新坦结衣Gakki雪肌精广告", //视频标题,当全屏时会显示  
 url:"2017123101.mp4", //支持本地视频和网络视频,格式MP4  
 img:"img/002.jpg", //视频截图封面  
 time:"02:30", //视频总时间以分钟单位,当网络缓慢时,没办法及时加载出来,如已知可以填写,可不填。  
 autoplay:false, //是否自动播放视频  
 isMobile:false, //是否开启当处于移动网络时,提示用户是否继续播放视频。,不支持浏览器环境  
 isFull:true, //是否点击播放就全屏显示  
 iospay:false, //如果是IOS系统是否采用苹果系统自带播放器, 可以在浏览器或微信中,全屏观看视频  
 drag:true, //禁止拖动,调节,音量和亮度  
 isfull:true, //是否显示全屏按钮  
 prompt:function(video) //当开启isMobile时,这里可以写提示用户的内容,h5+环境才有效  
 {    
               mui.confirm('你当前处于移动手机网络将会消耗手机流量,是否继续播放?', '提示',["取消","确定"], function(e)  
               {  
                    if(e.index == 1)  
                    {  
                      video.play();   
                    }   
              },"div");         
 }  
});   

新增了,同一页面,可以切换视频播放

mui("body").on("tap","#openvideo",function()  
{  
//切换视频播放  
htmlvideo.getplayUrl({url:"  ",img:"  ",title:" "});  
});

新版视频播放器
http://www.html5-app.com/show/115

目前该版本播放器,不再维护了,如有任何问题,请自行修改源代码自行解决。

83 关注 分享
n***@gmail.com 诗小柒 兰刃 梦如人生 DCloud_heavensoft Trust 9***@qq.com 3***@qq.com 无色无花 洛上千栀 Warn mlm8368 猪小怪 老哥教教我 水灵退散 地表荣耀 4***@qq.com 2***@qq.com 爱编程的鑫 s***@126.com 不能没有 1***@qq.com [已删除] 醉里挑灯砍屎 1***@qq.com 7***@qq.com 1***@qq.com l***@126.com 9***@qq.com 大苏 1***@qq.com itxiaoxiao 3***@qq.com joey_lee 5***@qq.com 慌慌张张 ccen 1***@qq.com [已删除] 7***@qq.com 1***@qq.com 陈锐 1***@qq.com 2***@qq.com businessman Effyt woody1 fx4399 lhyh 暮雪骄阳

要回复文章请先登录注册

老佛爷

老佛爷

大佬,可不可以记忆播放
2019-03-24 14:55
1***@qq.com

1***@qq.com

回复 PHP全栈工程师 :
大佬 替换你这段代码之后是可以横屏了,但是推出横屏的时候,整个页面都是横屏模式的。。
2019-03-13 14:57
云化雨

云化雨

王者大神,视频播放的全屏切换怎么柔化啊,我老板的手机超级卡,全屏切换的感觉好差,可以让全屏切换的时候优化一下吗 ? 就是那种淡入淡出的切换模式 , 我想改但不知道从哪里改T_T
2019-03-05 17:03
PHP全栈工程师

PHP全栈工程师

2019.2.16
发现在某些机型:比如华为10plus,三星某些机子上无法全屏。小米和苹果上是可以的,所以对代码进行了一个补充。请大家在源码的基础上进行修改。在587行处:
mui_quanping.addEventListener("tap", function()
{

isfull("");
if(fullScreenFlag){
plus.screen.lockOrientation("landscape");
}else{
plus.screen.lockOrientation("portrait");
}

});
用这段代码来代替。
2019-02-16 18:22
6***@qq.com

6***@qq.com

回复 王者地带 :
页面是预加载的,我去掉看看,谢谢您!
2019-02-14 11:30
王者地带

王者地带 (作者)

回复 6***@qq.com :
没有缓存,可能你的页面是预加载的,或者播放的视频链接没有更改到,先检查下
2019-02-05 00:02
6***@qq.com

6***@qq.com

王者,新年好,视频的缓存怎么去掉?
每次从详情页返回后,在进去另外一个详情页后,播放的还是之前的视频。
2019-02-04 12:30
w***@163.com

w***@163.com

竖屏视频全屏 还是横屏
2019-01-23 22:52
PHP全栈工程师

PHP全栈工程师

不能全屏,微信里是可以的。
2019-01-23 21:53
王者地带

王者地带 (作者)

回复 夜蕴 :
设备, isFull:false ,是不会一播放就全屏的
2018-12-29 00:00