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如何实现弹框的拖拽、可点击底层页面功能的文章就介绍到这了,更多相关vue3 element plus弹框拖拽内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Vue状态模式实现窗口停靠功能(灵动、自由, 管理后台Admin界面)
这篇文章主要介绍了Vue状态模式实现窗口停靠功能(灵动、自由, 管理后台Admin界面),本文通过实例代码文字说明给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2020-03-03
使用vue-element-admin框架调用后端接口及跨域的问题
这篇文章主要介绍了使用vue-element-admin框架调用后端接口及跨域的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-11-11


最新评论