|
今天在使用了ckplayer x3发现在PC端 安卓端测试都不错
但是在苹果系统中 使用微信打开则会出现视频无法播放 就是黑屏的啥提示都没有
在论坛搜了一下发现很多人存在这个问题且没有解决:
https://bbs.ckplayer.com/forum.php?mod=viewthread&tid=183&fromuid=62909
我自己测试了好多遍,虽然找到了解决的方法,但是也比较曲折,好像是ckplayer的对象要加载两次才行
就是第一次加载之后要调用remove() 再重新初始化就可以了,而且第二次初始化还不能通过js自动执行(setTimeout click等测试过都不行)
必须在div中通过点击事件销毁再重新创建就可以了 这里面应该是有点什么问题 希望版主能检查并修复一下
下面附代码:
- <body id="page-top">
- <div id="content">
- <div class="video" onclick="loadPlayer()"></div>
- </div>
- <script>
- function loadPlayer(){
- player.remove(); //通过div点击事件销毁实例并重新载入
- player=null;
- $('.video').html('');
- $(".video").removeAttr('onclick'); //移除onclick事件防止重复销毁再创建
- var videoObject = {
- container: '.video', //容器的ID或className
- poster:'{$data.video_image}',
- video:'{$data.video_file}',
- autoplay: true, //第二次开启自动播放 效果就是用户点一下div就能播放了
- rightBar:true, //类似于只加载了一次但是没有开启自动播放的效果
- screenshot:true,
- smallWindows:true,
- playbackrateOpen:true,
- webFull:true,
- theatre:true,
- ended:'.video-ended',
- };
- player=new ckplayer(videoObject); //重新实例化一次就可以播放了
- };
- var videoObject = {
- autoplay:false,
- container: '.video', //视频容器
- poster:'{$data.video_image}', //封面图片
- video:'{$data.video_file}', //视频地址
- loaded:'loadPlayer()'
- }
- var player=new ckplayer(videoObject);//网页加载时实例化一次ckplayer
- </script>
- <script src="__CDN__/assets/libs/jquery/dist/jquery.min.js"></script>
- <script src="__CDN__/assets/libs/bootstrap/dist/js/bootstrap.min.js"></script>
- </body>
复制代码 这样效果跟一次加载播放器但是没有开启自动播放差不多,用户也是点一下div就能播放了,再移除div的onclick事件,算是曲线解决了问题
希望版主能检查一下其中的原因并更新一下,存在这个问题的人还是挺多的.
|
|