From 8f03d1529c77bd91c0764e7b25e7a356a614b435 Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期一, 20 一月 2025 16:31:45 +0800
Subject: [PATCH] ll
---
h5/pages/polling/point.vue | 89 +++++++++++++++++++++++++++++++++++++++++---
1 files changed, 82 insertions(+), 7 deletions(-)
diff --git a/h5/pages/polling/point.vue b/h5/pages/polling/point.vue
index 1288d07..122737b 100644
--- a/h5/pages/polling/point.vue
+++ b/h5/pages/polling/point.vue
@@ -28,7 +28,12 @@
<view class="files">
<view class="adduser_list_item_ipt1_upload" v-for="(item, i) in info.multifileList" :key="i">
<image v-if="item.type == 0" :src="item.fileurlFull" mode="widthFix"></image>
- <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video>
+ <!-- <video v-if="item.type == 1" :src="item.fileurlFull" :controls="false"></video> -->
+ <view v-if="item.type == 1" @click="videoClick(item)" class="video_wrap">
+ <video :src="item.fileurlFull" initial-time="0.01" :show-center-play-btn="false" :controls="false"
+ class="video" :enable-progress-gesture="false" muted />
+ <image src="@/static/play.png" class="play" mode=""></image>
+ </view>
</view>
</view>
<view v-if="info.dealInfo" class="desc">{{ info.dealInfo }}</view>
@@ -96,7 +101,13 @@
@cancel="isShowHandleDate = false" mode="datetime"></u-datetime-picker>
<u-picker :show="isShowRes" keyName="name" @cancel="isShowRes = false" @confirm='confirmRes'
:columns="columns"></u-picker>
-
+ <!-- -->
+ <view v-if="videoPlay" class="video_app">
+ <video controls autoplay muted x5-video-player-type="h5" x5-video-player-fullscreen="true" id="myvideo"
+ :src="videoUrl" @fullscreenchange="screenChange"></video>
+ <view class="bg" @click="closeVideo"></view>
+ </view>
+ <!-- -->
</view>
</template>
@@ -135,7 +146,11 @@
name: '璺宠繃'
},
]
- ],
+ ],
+
+ videoPlay: false,
+ videoContext: null,
+ videoUrl: ''
};
},
onLoad(option) {
@@ -204,6 +219,26 @@
this.$set(this.handleParam, 'dealStatus', e.value[0].id)
this.$set(this.handleParam, 'dealName', e.value[0].name)
this.isShowRes = false
+ },
+ videoClick(item) {
+ this.videoPlay = true;
+ this.videoContext = uni.createVideoContext("myvideo", this); // this杩欎釜鏄疄渚嬪璞� 蹇呬紶
+ this.videoUrl = item.fileurlFull;
+ this.videoContext.requestFullScreen();
+ this.$nextTick(() => {
+ this.videoContext.play();
+ })
+ },
+ screenChange(e) {
+ let fullScreen = e.detail.fullScreen // 鍊紅rue涓鸿繘鍏ュ叏灞忥紝false涓洪��鍑哄叏灞�
+ if (!fullScreen) {
+ //閫�鍑哄叏灞�
+ this.videoPlay = false // 闅愯棌鎾斁鐩掑瓙
+ }
+ },
+ closeVideo() {
+ this.videoPlay = false
+ this.videoContext = null
},
fileDel(str, i) {
this[str].splice(i, 1);
@@ -470,11 +505,51 @@
image {
width: 100%;
height: 100%;
+ }
+ video {
+ width: 100%;
+ height: 100%;
}
-
- video {
- width: 100%;
- height: 100%;
+ .video_wrap {
+ position: relative;
+ border: 1px solid;
+ width: 156rpx;
+ height: 156rpx;
+ border-radius: 4rpx;
+
+ .play {
+ width: 60rpx !important;
+ height: 60rpx !important;
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
+ }
}
+ }
+
+ .video_app {
+ overflow: hidden;
+ position: fixed;
+ left: 0;
+ top: 0;
+ width: 100vw;
+ height: 100vh;
+ display: flex;
+ align-items: center;
+ z-index: 9990;
+
+ .bg {
+ background-color: rgba(0, 0, 0, .6);
+ position: absolute;
+ width: 100%;
+ height: 100%;
+ z-index: -1;
+ }
+
+ video {
+ width: 100%;
+ height: 42vh;
+ }
}
</style>
\ No newline at end of file
--
Gitblit v1.9.3