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彈框拖拽內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Vue+Ant Design進行大數據量下拉框卡頓與表單提交優(yōu)化
在現代前端開發(fā)中,處理大數據量渲染和表單交互是常見的挑戰(zhàn),本文將探討如何優(yōu)化 Ant Design Vue 下拉框在大數據量情況下的性能問題,并解決表單提交后重復提示的問題,需要的可以了解下2025-03-03