关于uniapp小程序内置canvas标签层级过高,覆盖其他标签问题

这篇具有很好参考价值的文章主要介绍了关于uniapp小程序内置canvas标签层级过高,覆盖其他标签问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

uniapp

原因:是因为canvas是原生组件,而uniapp的 view、text 等标签相当于二次封装过的,给予z-index也是不生效的,微信开发者工具没有问题,但真机测试会爆这个雷

恰巧碰上一个需求需要一个canvas生成图片放在页面,点击按钮后生成一个二维码模态框,二维码也是canvas生成图片的,所以就导致不仅模态框,两个canvas图片之间层级也出现了冲突,

小程序canvas层级,小程序,uni-app,前端

解决方案:

1.使用uniapp提供的 cover-view、cover-image 等标签.

2.写app端有提供nvue语法,仅支持flex布局

案例可参考:uniapp vue nvue 模态框遮罩_nicepainkiller的博客-CSDN博客

【uni-app系列】uni-app之nvue使用_奔跑吧邓邓子的博客-CSDN博客_uniapp 使用nvue

3.给canvas标签一个判断,判断canvas中有没有url生成,没有则使用canvas标签,有则使用image标签动态传值即可

个人采用的方案三,更简洁一些

<canvas class="mycard" canvas-id="myCanvas" v-if="!imgUrl" />
  <image  class="mycard" :src="imgUrl"
  v-if="isAuthentication==1 && imgUrl 
|| isShare==true && imgUrl" />
data(){
   return{
   imgUrl: "", // 用于存储canvans生成图片
  }
}

 效果如下:文章来源地址https://www.toymoban.com/news/detail-521575.html

到了这里,关于关于uniapp小程序内置canvas标签层级过高,覆盖其他标签问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • uniapp video(倍速功能、层级过高、视频第一帧做封面 等问题)

    uniapp video(倍速功能、层级过高、视频第一帧做封面 等问题)

             由于上次写video组件的问题,过于划水,没讲清楚,导致自己花费了很多时间,重新踩坑,对自己很抱歉。 效果图如下:倍速的显示和隐藏,需在全屏的时候 和 显示控制组件时 代码逻辑 1. 实现倍速的核心是创建视频组件控制器,调用它的倍速方法 =》官方文档

    2024年02月08日
    浏览(15)
  • 小程序ucharts层级过高如何解决

    为什么canvas组件总是会在最上层? 由于canvas组件是原生组件,原生组件的层级是最高的,所以页面中的其他组件无论设置 z-index 为多少,都无法盖在原生组件上 在页面出现点击事件,存在弹框,ucharts的图层会会出现在弹框上层,ucharts的图层事件会超过弹框事件,导致样式出

    2024年02月12日
    浏览(6)
  • video层级过高,以及界面使用多个video时,在安卓APP上同时播放的问题(uniapp)

    问题一 : 我的界面由于是自定义导航栏,所以使用video时,上滑界面video会直在最上层,盖着  头部导航栏 解决方法 :使用cover-view,自定义头部使用cover-view替换view 问题二 :自定义导航栏上面有menu,点击会出现一个弹出层,但是弹出层会被video压到 解决方法 :使用原生窗体

    2024年02月06日
    浏览(12)
  • 解决微信小程序Echarts图表层级过高的方案

    在微信小程序中使用Echarts图表时,有时会遇到图表层级过高的问题。这可能导致图表无法正常显示或部分内容被遮挡。本文将介绍一种解决方案,通过修改Echarts图表的样式和配置,可以有效解决这个问题。 解决方案如下: 检查图表容器的样式 首先,我们需要检查图表容器

    2024年02月03日
    浏览(10)
  • 【uniapp】 video视频层级、遮挡其他弹窗或顶部导航 使用nvue覆盖

    【uniapp】 video视频层级、遮挡其他弹窗或顶部导航 使用nvue覆盖

    uniapp 顶部导航和弹窗被video遮挡解决办法 全部代码 请前往dcloud 视频播放器 解决video视频遮挡顶部导航、 遮挡分享弹窗 组件层级 下载 话不多说 直接来干货 示例图片: 第一步:配置 subNVues 第二步:分别在index文件夹下建立三个文件分别为:index.vue 、drawer.nvue、subnvue.nvue文件

    2024年02月12日
    浏览(32)
  • 小程序 wxchart 折线图层级过高滑动遮档标题栏

    问题描述 : 标题栏背景色是渐变的,折线图用wxchart,滑动的时候标题栏被线图遮档。 分析: wxcharts是使用了canvas, 属性原来的组件,不是小程序自己的组件。 所以canvas层级权限是最高的,view不能盖在canvas上面。那么折线图就会盖在标题栏上面。 参考小程序: cover-view

    2024年02月15日
    浏览(14)
  • 微信小程序canvas层级太高,与其他非原生组件层级冲突

    微信小程序canvas层级太高,与其他非原生组件层级冲突

     官网已经提出新版本以支持同层渲染,但是实际项目中层级还是冲突的。  最后在文档中找到这样一段话,用真机打开,层级就正常了 。所以建议大家,多使用真机调试去测试!!!!

    2024年02月11日
    浏览(9)
  • 【微信小程序】解决canvas组件层级最高问题

    1、为什么canvas组件总是会在最上层? 因为canvas组件是由客户端创建的原生组件, 原生组件层级是最高的 ,所以页面中的其他组件无论设置 z-index 为多少都无法盖在原生组件上 。 2、如何解决canvas层级最高问题?                                                    wx

    2024年02月11日
    浏览(46)
  • uniapp web-view页面层级过高,想在web-view上层再加入按钮,采用plus.nativeObj.View实现。动态创建web-view解决切换src后丢失背景问题。

    uniapp web-view页面层级过高,想在web-view上层再加入按钮,采用plus.nativeObj.View实现。动态创建web-view解决切换src后丢失背景问题。

    需求 :有两个web-view页面,需要添加按钮,动态切换web-view的src进行页面切换 问题 :uniapp的web-view层级很高,通过positon的z-index无法将其他元素置于web-view页面上层 解决方式 :采用底层组件plus.nativeObj.View创建视图,该视图比web-view层级高,可在web-view上层添加 按钮,图片,矩

    2024年02月11日
    浏览(24)
  • 【微信小程序】echart中canvas原生组件层级太高遮挡vantui中的组件

    【微信小程序】echart中canvas原生组件层级太高遮挡vantui中的组件

    之前的问题图片如下: 最开始想到的方案是降低canvas的层级,但是canvas是原生组件,他的层级是没法改变 所以又想到改变vant组件的层级,但是一样无果。。。 随后,看到网上大篇幅的都是使用显示隐藏来操控picker的,这样会如果页面可以滑动,就导致用户还是可以看到ec

    2024年02月13日
    浏览(16)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包