要解决这个问题,您可以尝试在弹框弹出时,给position:fixed的盒子添加一个高度为100%的遮罩层,来遮住它。具体步骤如下:

  1. 在弹框组件的样式中,添加一个遮罩层的样式,例如:
.mask {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* 设置遮罩层的颜色和透明度 */
}
  1. 在弹框组件的模板中,将遮罩层添加到position:fixed的盒子内部,例如:
<template>
  <div>
    <div class="fixed-box">
      <!-- position:fixed的盒子内容 -->
    </div>
    <div class="mask" v-show="showPopup" @click="hidePopup"></div>
    <upopup v-model="showPopup"></upopup>
  </div>
</template>
  1. 在弹框组件的逻辑代码中,添加控制遮罩层显示和隐藏的逻辑,例如:
export default {
  data() {
    return {
      showPopup: false // 控制弹框显示和隐藏的变量
    };
  },
  methods: {
    hidePopup() {
      this.showPopup = false;
    }
  }
};

这样,当弹框弹出时,遮罩层会覆盖在position:fixed的盒子上方,实现遮挡效果。当点击遮罩层或关闭按钮时,隐藏弹框和遮罩层

uniapp中在页面底部用positionfixed固定在底部一个盒子然后用upopup写了一个弹框是从底部弹出的但是没有遮住positionfixed的这个盒子应该怎么解决

原文地址: http://www.cveoy.top/t/topic/ixIA 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录