vue3+element Plus实现弹框的拖拽、可点击底层页面功能

编程入门 行业动态 更新时间:2024-10-11 13:20:04

vue3+element Plus实现弹框的拖拽、可点击<a href=https://www.elefans.com/category/jswz/34/1768082.html style=底层页面功能"/>

vue3+element Plus实现弹框的拖拽、可点击底层页面功能

 1、template部分

<el-dialog:modal="false"v-model="dialogVisible"title=""width="30%"draggable:close-on-click-modal="false"class="message-dialog">
</el-dialog>

必须加的属性

        modal:是否去掉遮罩层

        close-on-click-modal:是否可以通过点击modal关闭Dialog

        draggable:开启拖拽功能

2、css部分

网上查找的资料,css需要修改pointer-events,主要的作用是设置元素是否对鼠标事件做出反应

<style lang="less" scoped>.el-dialog__wrapper{pointer-events:none;/deep/ .el-dialog{pointer-events:auto;}}
</style>

 

因为 .el-overlay-dialog的父级div也是一个遮罩层,所以没有效果。

最终找到解决方法如下

去掉.el-overlay-dialog的父级div的pointer-events事件。此时拖拽功能不可以使用,使用要给header、body、footer元素的事件加回来。

<style lang="scss">
.message-dialog {.el-dialog__header,.el-dialog__body,.el-dialog__footer {pointer-events: auto !important;}
}
:has(> .el-overlay-dialog .message-dialog) {pointer-events: none !important;
}
</style>

更多推荐

vue3+element Plus实现弹框的拖拽、可点击底层页面功能

本文发布于:2023-11-17 12:34:33,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1642335.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:底层   拖拽   页面   功能   element

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!