微信小程序中的video視頻實(shí)現(xiàn) 自定義播放按鈕、封面圖、視頻封面上文案
效果圖展示:

實(shí)現(xiàn)方法:
在video中添加一個(gè)cover-view,在cover-view寫兩個(gè)cover-image,一個(gè)用來存儲(chǔ)封面圖、一個(gè)用來存放播放按鈕,同級(jí)寫一個(gè)cover-view用來完成封面上的文字,設(shè)置絕對(duì)定位,水平垂直居中,在播放按鈕上添加點(diǎn)擊事件,點(diǎn)擊之后隱藏cover-view,最后在監(jiān)聽視頻結(jié)束事件,重新填充封面跟播放按鈕就可以了。
代碼:
<video id="myVideo" src="{{videoSrc}}" enable-danmu controls show-fullscreen-btn show-center-play-btn="{{false}}" auto-pause-if-navigate auto-pause-if-open-native show-play-btn object-fit="fill" bindpause="bindpause" bindended="bindended" >
<cover-view class="video_cover" wx:if="{{isShow}}" bindtap="bindplay">
<cover-image src="{{videoCoverImg}}" mode="widthFix"></cover-image>
<cover-image src="{{videoPlayIcon}}" mode="widthFix" class="video_play_icon"></cover-image>
<cover-view class="video_bg_black">
<cover-view class="video_cover_txt">
<cover-view>
<cover-view class="video_txt">1天1元,開通VIP</cover-view>
<cover-view class="video_txt">更多優(yōu)質(zhì)視頻等你來解鎖</cover-view>
</cover-view>
<cover-image src="{{videoLockIcon}}" class="video_icon_lock" mode="widthFix"></cover-image>
</cover-view>
</cover-view>
</cover-view>
</video>
Page({
data: {
isShow:true,
videoSrc:'http://wxsnsdy.tc.qq.com/105/20210/snsdyvideodownload?filekey=30280201010421301f0201690402534804102ca905ce620b1241b726bc41dcff44e00204012882540400&bizid=1023&hy=SH&fileparam=302c020101042530230204136ffd93020457e3c4ff02024ef202031e8d7f02030f42400204045a320a0201000400', // 視頻
videoCoverImg:'http://img5.imgtn.bdimg.com/it/u=1672477765,2527992874&fm=26&gp=0.jpg', // 視頻封面圖
videoPlayIcon:'http://39.105.134.221:8080/test/source1.png', // 視頻播放icon
videoLockIcon:'http://39.105.134.221:8080/test/source2.png', // 視頻播放鎖
},
onReady: function () {
this.videoContext = wx.createVideoContext('myVideo')
},
// 點(diǎn)擊封面自定義播放按鈕時(shí)觸發(fā)
bindplay() {
this.setData({
isShow:false
})
this.videoContext.play();
console.log('play')
},
// 監(jiān)聽播放到末尾時(shí)觸發(fā)
bindended(){
console.log('bindended')
this.setData({
isShow: true
})
this.videoContext.ended();
},
// 監(jiān)聽暫停播放時(shí)觸發(fā)
bindpause(){
console.log('pause')
}
})
.video_cover{
width:100%;
height:100%;
position:relative;
}
.video_play_icon{
position:absolute;
left:50%;
top:50%;
transform:translate(-50%,-50%);
width:40px;
height:40px;
z-index:5
}
.video_bg_black{
position:absolute;
left:0;
top:0;
bottom:0;
right:0;
background:rgba(0,0,0,.5);
}
.video_cover_txt{
display:flex;
justify-content: flex-end;
align-items: center;
text-align:right;
color: #fff;
font-size: 28rpx;
margin-top: 35rpx;
height: 90rpx;
}
.video_icon_lock{
width:30rpx;
height: auto;
margin:0 30rpx;
}
.video_txt{
margin:10rpx auto;
}
總結(jié)
以上所述是小編給大家介紹的微信小程序中的video視頻實(shí)現(xiàn) 自定義播放按鈕、封面圖、視頻封面上文案,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
- 微信小程序?qū)崿F(xiàn)可拖動(dòng)懸浮圖標(biāo)(包括按鈕角標(biāo)的實(shí)現(xiàn))
- 微信小程序?qū)㈨撁姘粹o懸浮固定在底部的實(shí)現(xiàn)代碼
- 微信小程序點(diǎn)擊按鈕動(dòng)態(tài)切換input的disabled禁用/啟用狀態(tài)功能
- 微信小程序?qū)崿F(xiàn)單個(gè)卡片左滑顯示按鈕并防止上下滑動(dòng)干擾功能
- 微信小程序批量監(jiān)聽輸入框?qū)Π粹o樣式進(jìn)行控制的實(shí)現(xiàn)代碼
- 微信小程序 多行文本顯示...+顯示更多按鈕和收起更多按鈕功能
- 微信小程序按鈕點(diǎn)擊動(dòng)畫效果的實(shí)現(xiàn)
- 操作按鈕懸浮固定在微信小程序底部的實(shí)現(xiàn)代碼
- 詳解微信小程序膠囊按鈕返回|首頁自定義導(dǎo)航欄功能
- 微信小程序mpvue點(diǎn)擊按鈕獲取button值的方法
- 微信小程序單選radio及多選checkbox按鈕用法示例
- 微信小程序開發(fā)之點(diǎn)擊按鈕退出小程序的實(shí)現(xiàn)方法
- 微信小程序按鈕巧妙用法
相關(guān)文章
javascript函數(shù)中參數(shù)傳遞問題示例探討
本節(jié)主要與大家探討下javascript函數(shù)中參數(shù)傳遞問題,有不明白的朋友可以參考下2014-07-07
解決mui框架中switch開關(guān)通過js控制開或者關(guān)狀態(tài)時(shí)小圓點(diǎn)不動(dòng)的問題
今天小編就為大家分享一篇解決mui框架中switch開關(guān)通過js控制開或者關(guān)狀態(tài)時(shí)小圓點(diǎn)不動(dòng)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-09-09
一文詳解Proxy和Object.defineProperty的使用與區(qū)別
在JavaScript中,對(duì)象是一種核心的數(shù)據(jù)結(jié)構(gòu),而對(duì)對(duì)象的操作也是開發(fā)中經(jīng)常遇到的任務(wù),本文將深入比較Proxy和Object.defineProperty,感興趣的小伙伴可以了解下2023-12-12
js實(shí)現(xiàn)九宮格圖片半透明漸顯特效的方法
這篇文章主要介紹了js實(shí)現(xiàn)九宮格圖片半透明漸顯特效的方法,涉及js操作css特效的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-02-02
Javascript筆記一 js以及json基礎(chǔ)使用說明
JavaScript中的數(shù)據(jù)很簡(jiǎn)潔的。簡(jiǎn)單數(shù)據(jù)只有 undefined, null, boolean, number和string這五種,而復(fù)雜數(shù)據(jù)只有一種,即object。2010-05-05
使用JavaScript實(shí)現(xiàn)按鈕的漣漪效果實(shí)例代碼
近來看到個(gè)不錯(cuò)的按鈕點(diǎn)擊效果,當(dāng)點(diǎn)擊時(shí)產(chǎn)生一次水波漣漪效果,挺好玩的,下面這篇文章主要給大家介紹了關(guān)于使用JavaScript實(shí)現(xiàn)按鈕漣漪效果的相關(guān)資料,需要的朋友可以參考下2022-11-11
使用Bootstrap和Vue實(shí)現(xiàn)用戶信息的編輯刪除功能
這篇文章主要介紹了使用Bootstrap和Vue實(shí)現(xiàn)用戶信息的編輯刪除功能,需要的朋友可以參考下2017-10-10
細(xì)說webpack源碼之compile流程-rules參數(shù)處理技巧(1)
webpack作為一種流行的打包工具被廣泛應(yīng)用在web項(xiàng)目的前端工程化構(gòu)建中。下面通過本文給大家介紹webpack源碼之compile流程-rules參數(shù)處理技巧,感興趣的朋友一起看看吧2017-12-12
JavaScript 彈出窗體點(diǎn)擊按鈕返回選擇數(shù)據(jù)的實(shí)現(xiàn)
這兩天一直想實(shí)現(xiàn)這個(gè),以前做做個(gè)Demo,但是不知道跑哪去了。于是今天在網(wǎng)上找了些資料再自己動(dòng)手搞定。廢話不多說。直接進(jìn)入主題啦。2010-04-04

