uniapp中video播放视频上按钮没显示的问题

video标签层级很高,尝试了添加z-index,但无效果

通过查阅资料,得知cover-view层级比video层级高

效果图

需求是为了使直播时,可选是原画/流畅

解决方案

首先,在pages.json中配置右上角的图标

language 复制代码
{
			"path" : "pages/event/live",
			"style" : {
				"navigationBarTitleText": "直播详情",
				"navigationBarTextStyle":"white",
				"disableScroll": true,
				"app-plus":{
					"titleNView":{
						"backgroundColor":"#010001",
						"buttons":[{
							"fontSrc": "/static/iconfontapp.ttf",
							"text": "\ue66f",
							"fontSize": "22px",
							"color": "#FFFFFF"
						},{
							"fontSrc": "/static/iconfontapp.ttf",
							"text": "\ue60b",
							"fontSize": "22px",
							"color": "#FFFFFF"
						}]
					}
				}
			}
		},

然后在需要展示这个按钮的页面,加上操作方法

javascript 复制代码
<template>
	<view v-if="liveUrl">
		<video class="v-video-play"  autoplay
			:src="liveUrl" controls
			:show-progress="false">
			<template v-if="speedShow && range && range.length">
				<cover-view class="cover-box w100"></cover-view>
					<cover-view v-for="(item, index) in range" :key="index" @click="selectitem(item.value)" class="sb-txt cf" :class="[{'cred': item.value == rangeValue},`f${index + 1}`]">{{ item.text }}</cover-view>
			</template>
		</video>
	</view>
</template>
<script>
export default {
	data() {
		return {
			rangeValue: 'FD', // 默认流畅
			range: [], // 画质选项的列表
			speedShow: false // 是否点击了切换的按钮
		}
	},
	onNavigationBarButtonTap(button) {
		let _event = this.event
		if(button.index === 0) {//如果点击的是分享按钮
			shareWx({
				title: _event.title,
				summary: '活动直播 - 墨天轮',
				href: domain + `/event/live/${_event.id}`,
				imageUrl: _event.shareImageUrl
			})
		} else if (button.index === 1) {//如果点击的是清晰度切换按钮
			this.speedShow = !this.speedShow
		}
	},
}
</script>
相关推荐
Emily156853598702 小时前
Emerson 1C31129G03 Analog Input Module
java·开发语言·前端·plc·emerson·1c31129g03·input module
To_OC7 小时前
面试被问了三回三栏布局,这次我终于把 BFC 那层窗户纸捅破了
前端·css·面试
To_OC8 小时前
啃完 TS 工具类型我发现:Pick 和 Omit 原来就是一层窗户纸
前端·面试·typescript
风月说与山鬼9 小时前
三、大括号语法
前端·react.js
kyriewen9 小时前
我把最常踩的8个CORS跨域报错整理了一遍——第8个去年还不存在
前端·javascript
Csvn10 小时前
🕰️ 闭包 + setTimeout 的 5 个经典陷阱:为什么定时器看到的永远不是最新的值?
前端
lilian23310 小时前
Harmony os 技术实战|拼豆制图27:用单字符编码承载 50 张 70×70 图纸
前端·数据库·华为·harmonyos
CarIise11 小时前
CSS选择器与样式关联
前端·css·tensorflow
里欧跑得慢12 小时前
CSS 模块化架构的演进:BEM、CSS Modules 到 CSS-in-JS 的反思
前端·css·flutter·web·css-in-js