前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >全屏弹窗?简洁的过分了

全屏弹窗?简洁的过分了

作者头像
大风写全栈
发布2024-12-19 21:25:13
发布2024-12-19 21:25:13
7100
代码可运行
举报
文章被收录于专栏:锤子代码锤子代码
运行总次数:0
代码可运行

需要一个移动端全屏弹窗

项目是用vant实现的,在vant框架里面没找到合适的全屏弹窗组件。

干脆自己写一个算了。

就弄了个简洁版的全屏弹窗。

需求比较简单,在全屏弹窗里面打开指定url,左上角标题,右上角关闭按钮。

没有遮罩、拖拽,没有其它依赖,适合懒人使用。

来个🌰

HTML部分:

代码语言:javascript
代码运行次数:0
复制
<div v-if="state.showDetailFlag" class="modal-container" @click.stop>
  <div class="modal-header">
    <span class="modal-title">详情</span>
    <van-icon name="cross" size="24px" class="close-icon" @click="state.showDetailFlag = false"/>
  </div>
  <iframe
      :src="state.detailUrl"
      width="100%"
      height="calc(100% - 56px)"
      style="border:none;"
  ></iframe>
</div>

js部分:

代码语言:javascript
代码运行次数:0
复制
<script setup>

const state = reactive({
  showDetailFlag: false,
  detailUrl: ''
});

</script>

样式:

代码语言:javascript
代码运行次数:0
复制
<style>
.modal-container {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: white;
  z-index: 9999;
  display: flex;
  flex-direction: column;
}

.modal-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  background-color: #f7f8fa;
  border-bottom: 1px solid #ebedf0;
}

.modal-title {
  font-size: 18px;
  font-weight: bold;
}

.close-icon {
  cursor: pointer;
}

.modal-container iframe {
  width: 100%;
  height: 100%;
  border: none;
}
</style>
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-12-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 锤子代码 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档