弹幕微信小程序开发之视频播放器 Video 弹幕 弹幕颜色自定义

自定义播放器  时间:2021-01-28  阅读:()

微信小程序开发之视频播放器Video弹幕弹幕颜色自定义

把录音的模块尝试过之后就想着微信小程序的视频播放会不会更有趣?

果然,微信小程序视频自带弹幕.是不是很爽,跟我一起来看看.

微信小程序开发之录音机音频播放动画(真机可用)

先上gif:

再上几张图:

1.视频播放器

2.选择弹幕颜色

3.弹幕来了. ..

1.视频播放器

微信已经封装的非常好.我这里只用了很简单的几个属性

由于以前没做过弹幕,看到danmu-lis t就激动了.而且只需要将弹幕内容加入集合即可.弹幕列表的元素:

{text: '第1s出现的红色弹幕',//文本color: '#ff0000',//颜色time: 1//发送的时间

}

其他的属性就不说了,以后遇到再细细研究.

2.选择弹幕颜色

从上面的弹幕列表元素可以看出,微信并没有给开发者太多的自定义空间.文本?时间?颜色?也就颜色还能玩出点花样吧.

于是我就简单的做了个常用颜色的列表.算是自定义弹幕颜色吧

上代码:ps:代码没整理,很烂,凑活着看吧.

1.index.wxml

[html]view plain c opy在CODE上查看代码片派生到我的代码片

<!--index.wxml-->

<view class="section tc">

<video id="myVideo" style="height:{{videoHeight}}px;width:{{videoWidth}}px"src="http://wxsns dy.tc.qq.c om/105/20210/sns dyvideodownload?filekey=30280201010421301 f0201690402534804102ca905ce620b1241b726bc41dcff44e00204012882540400&bizid=1023&hy=SH&fileparam=302c020101042530230204136ffd93020457e3c4ff02024ef202031 e8d7f02030f42400204045 a320a0201000400" b inderror="v ideo ErrorCallbac k" danmu-lis t="{{danmuList}}"enable-danmu danmu-btn c ontrols></video>

<view clas s="btn-area">

<view c las s="w eui-c ell w eui-c ell_input">

<view clas s="weui-c ell__bd">

<input class=bindb lur="b indInput Blur" />

</view>

</view>

<button style="margin:30rpx;"bindtap="b indS endDanmu">发送弹幕</button>

</view>

</view>

<view c las s="w eui-c ells w eui-c ells_after-title">

<view clas s="weui-c ell weui-c ell_switch">

<view clas s="weui-c ell__bd">随机颜色</view>

<view c las s="w eui-c ell__ft">

<switch checked bindchange="switchChange" />

</view>

</view>

<view class="colorstyle" bindtap="selectColor">

<text>选择颜色</text>

<view style="height:80rpx;width:80rpx;line-height:100rpx;margin:10rpx;bac kground-c olor:{{numberColor}}"></v iew>

</view>

2.index.wxss

(从别的项目粘过来的.哈哈)

[css]view plain copy在CODE上查看代码片派生到我的代码片

/**index.wxs s**/

.w eui-c ells {position:relativ e;margin-top: 1.17647059em;background-c olor:#FFFFFF;line-he ight: 1.41176471;font-size: 17px;

}

.w eui-c ells:before {c ontent: " ";pos ition:abs olute;left:0;top:0;right:0;height: 1 px;border-top: 1rpx solid#D9D9D9;color:#D9D9D9;

}

.w eui-c ells:after {c ontent: " ";pos ition:abs olute;left:0;bottom:0;

right:0;height: 1 px;border-bottom: 1rpx solid#D9D9D9;color:#D9D9D9;

}

.w eui-c ells_after-title {margin-top:0;

}

.w eui-c ell__bd{

-w ebkit-box-flex: 1;

-w ebkit-flex: 1;flex: 1;

}

.w eui-c ell__ft {text-align:right;color:#999999;

}

.w eui-c ell {padding: 10px 10px;position:relativ e;display: -w ebkit-box;display: -w ebkit-flex;dis play:flex;

-w ebkit-box-align:c enter;

-w ebkit-align-items:c enter;align-items:c enter;

}

.weui-cell:before {c ontent: " ";pos ition:abs olute;top:0;right:0;height: 1 px;border-top: 1rpx solid#D9D9D9;color:#D9D9D9;left: 15px;

}

.weui-cell:first-child:before {display:none;

}

.c olorstyle{border-top:2px solid#eee;border-bottom:2px solid#eee;

padding-left: 10px;padding-right: 10px;font-size: 17px;line-he ight: 100rpx;dis play:flex;flex-direction:row;justify-c ontent:spac e-betw een;

}

3.index.js

[javascript]view plain copy在CODE上查看代码片派生到我的代码片

//index.jsfunction getRandomColor() {let rgb=[]for (let i=0; i<3;++i) {let c olor=Math.floor(Math.random() *256).toString(16)c olor=c olor.length==1 ?'0'+c olor :c olorrgb.push(c olor)

}return'#'+rgb.jo in(' ')

}

P ag e({onLoad:func tion() {v ar_th is=th is;

//获取屏幕宽高wx.getSystemInfo({success:function(res) {var w indowWidth=res.w indowWidth;

//video标签认宽度300px、高度225px设置宽高需要通过wxss设置w idth和height。var video He ight=(225/300)*w indowWidth//屏幕高宽比c ons ole.log('videoWidth: '+w indow Width)console.log('videoHeight: '+videoHeight)

_this.s etData({videoWidth:w indow Width,videoHeight:video Height

})

}

})

},onReady:func tion(res) {this.videoContext=wx.c reateVid eoContext('myVideo')

},onShow:function() {v ar_th is=th is;

//获取年数wx.getStorage({key: 'numb erCo lor',success:function(res) {c ons ole.log(res.data+"numberColor----")_this.s etData({numberColor:res.data,

})

}

})

},inputValu e: ' ',data: {is RandomColor: true,//默认随机src:numb er C o lor: "#ff0000",//默认黑色danmuLis t: [

{text: '第1s出现的红色弹幕',color: '#ff0000',time: 1

},

{text: '第2s出现的绿色弹幕',color: '#00ff00',time:2

}

]

},b indI nputB lur:func tion(e) {this.inputVa lue=e.detail.va lue

},bindS endDanmu:func tion() {if(this.data.is RandomColor) {var color=getRandomColor();

} else {var c olor=this.data.numberColor;

}this.video Context.s endDanmu({

云俄罗斯VPSJusthost俄罗斯VPS云服务器justg:JustHost、RuVDS、JustG等俄罗斯vps主机

俄罗斯vps云服务器商家推荐!俄罗斯VPS,也叫毛子主机(毛子vps),因为俄罗斯离中国大陆比较近,所以俄罗斯VPS的延迟会比较低,国内用户也不少,例如新西伯利亚机房和莫斯科机房都是比较热门的俄罗斯机房。这里为大家整理推荐一些好用的俄罗斯VPS云服务器,这里主要推荐这三家:justhost、ruvds、justg等俄罗斯vps主机,方便大家对比购买适合自己的俄罗斯VPS。一、俄罗斯VPS介绍俄罗斯...

华为云年中聚惠618活动,新用户专区,云服务器低至88元/年,3年仅580.98元,热销抢购中,最后2天!

华为云怎么样?华为云用在线的方式将华为30多年在ICT基础设施领域的技术积累和产品解决方案开放给客户,致力于提供稳定可靠、安全可信、可持续创新的云服务,做智能世界的“黑土地”,推进实现“用得起、用得好、用得放心”的普惠AI。华为云作为底座,为华为全栈全场景AI战略提供强大的算力平台和更易用的开发平台。本次年终聚惠618活动相当给力,1核2G内存1m云耀云服务器仅88元/年起,送主机安全基础版套餐,...

EdgeNat 新年开通优惠 - 韩国独立服务器原生IP地址CN2线路七折优惠

EdgeNat 商家在之前也有分享过几次活动,主要提供香港和韩国的VPS主机,分别在沙田和首尔LG机房,服务器均为自营硬件,电信CN2线路,移动联通BGP直连,其中VPS主机基于KVM架构,宿主机采用四路E5处理器、raid10+BBU固态硬盘!最高可以提供500Gbps DDoS防御。这次开年活动中有提供七折优惠的韩国独立服务器,原生IP地址CN2线路。第一、优惠券活动EdgeNat优惠码(限月...

自定义播放器为你推荐
软银收购arm如果华为麒麟得不到ARMv9构架升级,性能势必会落后别人,该怎么办?盗版win8.1升级win10我的电脑是预装正版win8的,然后重装了盗版win8.1。现在我提取出了OEM KEY,怎么能升级到win10呢?唐人社美国10次啦美国的10号码是我们中国多少码?p图软件哪个好用P图用什么软件啊天气预报哪个好用哪个最准确哪个天气预报最准确!电脑管家和360哪个好360卫士和电脑管家,哪个更好压缩软件哪个好解压软件哪个好电动牙刷哪个好有人懂电动牙刷吗?飞利浦的好用还是欧乐B好用如何增加百度收录如何快速提高百度收录量360云盘360云盘和微云那个好用?
域名服务dns的主要功能为 怎样申请域名 中国万网域名 qq云存储 cve-2014-6271 免费主机 私服服务器 kddi 10t等于多少g 华为4核 gg广告 中国智能物流骨干网 hostloc 中国电信测网速 linux服务器维护 绍兴电信 视频服务器是什么 帽子云排名 石家庄服务器托管 注册阿里云邮箱 更多