前端 原生手写遮罩层和底部弹框

像一些原生写法,没借助ui组件的,想实现点击底部弹框的功能有点麻烦,刚好项目里是原生的写法,没借助任何ui组件,项目有个新需求,需要底部弹框+遮罩层,我这里用的是jq

第一步:html

ps:为啥要两个div元素,作用是用户点击遮罩层也能关闭底部弹框,点击内容块右上角icon也能关闭弹框,所以我这里用了两个div元素包裹着
在这里插入图片描述
第二步:css
1.遮罩层样式
ps:下图是遮罩层样式,宽高100%用来铺手机屏幕宽高,定位的作用是层级,层级要大于内容元素,但是要小于弹框的层级,所以这里加了定位,display:none作用当然默认是隐藏,用户点击才显示弹框
在这里插入图片描述
2.内容样式
ps:下图是弹框父级元素的样式,里面内容样式小伙伴按照自己项目布局自行添加就好,
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210127150627922.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1NjY1MzA1,size_16,color_FFFFFF,t_70
3.点击事件
ps:用来显示弹框的事件
在这里插入图片描述
3.1,对应事件的js
ps:showPop()是点击显示事件,让遮罩层和底部弹框显示,底部弹框显示这里加了个css3的transition动画效果,用户体验更好,视觉更好,有个缓慢从下往上的效果
hidePop()是点击遮罩层让遮罩层隐藏的事件,跟显示的逻辑相反,
在这里插入图片描述
最后上效果图
在这里插入图片描述
在这里插入图片描述

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值