1.点击空白关闭
最简单的vue
<div @click="tan">点击谈窗2</div>
<div class="tanchuang" v-if="showTan" @click="Close">
<div class="content" @click.stop="toGo"> //阻止冒泡
这是很重要的弹窗内容
</div>
</div>
tan() {
this.showTan = true;
},
Close() {
this.showTan = false;
},
toGo() {
}
2.背景虚化
background: rgba(10, 10, 10, 0.7);
opacity:0.4 //是整个页面透明,文字也会透明
3.防止穿透
https://www.cnblogs.com/padding1015/p/10568070.html
第一种方法可以,第二种监听‘touchmove’失败了
tan() {
this.showTan = true;
document.body.style.overflow = 'hidden';
document.body.style.position = 'fixed'; //果然是因为加了fixed,就会自动回滚到顶部
},
Close() {
this.showTan = false;
document.body.style.overflow = 'auto';
document.body.style.position = 'static';
},