• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

小程序多视频播放,避免同时播放

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

html

<block wx:if="{{index_info.video != false}}">
<view class="tv">
    <view class="head1">
        <text class="one">动漫<text >说</text></text>
    </view>
    <view class="con">
        <view class="k"></view>
        <block wx:for="{{index_info.video}}" wx:key="id">
        <view class="list">
            <view class="TV">
                <video bindplay="bindPlayCallBack" id="video_{{item.id}}" style="width: 335rpx;height: 200rpx;" src="{{item.video_url}}" poster="{{item.img_url}}"></video>
            </view>
            <view class="word">{{item.title}}</view>
            <view class="fu">{{item.sub_title}}</view>
        </view>
        </block>
        <view class="p"></view>
        </view>
</view>
</block>

js

bindPlayCallBack: function (e) {
    console.log(\'当前视频\', e.target.id);
    var current_video = e.target.id;
    // 获取所有的video
    console.log(\'所有视频\', this.data.index_info.video);
    var that = this;
    let video = that.data.index_info.video;
    for (var i in video) {
        var index_video = \'video_\' + video[i].id;
        var videoContextIndex = wx.createVideoContext(index_video);
        if (current_video != index_video) {
            // 暂停其他的
            videoContextIndex.pause();
        }
    }
}

这里用到了,循环json数组的用法。

升级,自定义覆盖内容

html

<block wx:if="{{index_info.video != false}}">
<view class="tv">
    <view class="head1">
        <text class="one">扶贫政策<text>二十条</text></text>
    </view>
    <view class="con">
        <view class="k"></view>
        <block wx:for="{{index_info.video}}" wx:key="index">
        <view class="list">
            <view class="TV">
                <view class="{{item.hide_cover ?\'cover-box-hide\':\'cover-box\'}}" style="z-index:100;" data-index="{{index}}" data-id="{{item.id}}" bind:tap="playVideo">
                    <image class="cover-img" src="/images/fupin/play.png" />
                </view>
                <video bindplay="bindPlayCallBack" id="video_{{item.id}}" object-fit="cover" style="width: 330rpx;height: 190rpx;" src="{{item.video_url}}" show-center-play-btn="{{false}}" show-play-btn="{{item.show_play_btn}}"  show-fullscreen-btn="{{item.show_fullscreen_btn}}" controls="{{true}}"></video>
            </view>
            <view class="word">{{item.title}}</view>
            <view class="fu">{{item.sub_title}}</view>
        </view>
        </block>
        <view class="p"></view>
        </view>
</view>
</block>

js

playVideo: function (e) {
    let id = e.currentTarget.dataset.id;
    let index = e.currentTarget.dataset.index;
    var index_video = \'video_\' + id;
    var videoContextCurrent = wx.createVideoContext(index_video);
    videoContextCurrent.play();

    var that = this;
    var show_play_btn = \'index_info.video[\' + index + \'].show_play_btn\';
    var show_fullscreen_btn = \'index_info.video[\' + index + \'].show_fullscreen_btn\';
    var hide_cover = \'index_info.video[\' + index + \'].hide_cover\';
    that.setData({
        [show_play_btn]: true, // 使用[]将字符串包起来,为其赋值
        [show_fullscreen_btn]: true,
        [hide_cover]: true
    });
}

自定义覆盖内容,添加点击播放事件,同时开启播放按钮和全屏按钮。同时隐藏覆盖图标。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
微信小程序自定义导航栏发布时间:2022-07-18
下一篇:
微信小程序-tab切换发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap