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>
相关推荐
黑客飓风15 分钟前
JavaScript 性能优化实战大纲
前端·javascript·性能优化
emojiwoo2 小时前
【前端基础知识系列六】React 项目基本框架及常见文件夹作用总结(图文版)
前端·react.js·前端框架
张人玉2 小时前
XML 序列化与操作详解笔记
xml·前端·笔记
杨荧2 小时前
基于Python的宠物服务管理系统 Python+Django+Vue.js
大数据·前端·vue.js·爬虫·python·信息可视化
YeeWang3 小时前
🎉 Eficy 让你的 Cherry Studio 直接生成可预览的 React 页面
前端·javascript
gnip3 小时前
Jenkins部署前端项目实战方案
前端·javascript·架构
Orange3015113 小时前
《深入源码理解webpack构建流程》
前端·javascript·webpack·typescript·node.js·es6
lovepenny4 小时前
Failed to resolve entry for package "js-demo-tools". The package may have ......
前端·npm
超凌4 小时前
threejs 创建了10w条THREE.Line,销毁数据,等待了10秒
前端
车厘小团子4 小时前
🎨 前端多主题最佳实践:用 Less Map + generate-css 打造自动化主题系统
前端·架构·less