Vue3+Element Plus:使用el-dialog,对话框可拖动,且对话框弹出时仍然能够在背景页(对话框外部的页面部分)上进行滚动以及输入框输入信息

【需求】
使用Element Plus中的el-dialog默认是模态的(即它会阻止用户与对话框外部的元素进行交互),对话框弹出时仍然能够在背景页(对话框外部的页面部分)上进行滚动以及输入框输入信息,且对话框可拖动

【思路】

  • 设置el-dialog属性draggable为true,开启可拖动功能
  • 设置el-dialog属性modal为false,关闭遮罩层样式
  • 设置el-dialog属性lock-scroll为false,在 Dialog 出现时将 body 解除滚动锁定
  • 设置el-dialog属性close-on-click-modal为false,不可以通过点击 modal 关闭 Dialog
  • 添加el-dialog属性modal-class,遮罩的自定义类名,设置为pointer-events: none
  • 添加el-dialog属性class,Dialog 的自定义类名,设置为pointer-events: auto

【示例代码】

<template><el-button plain @click="dialogVisible = true">打开弹出框</el-button><ul><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li><el-input v-model="backgroundInput" placeholder="在背景页输入"></el-input></li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li><li>6</li></ul><div><el-dialogv-model="dialogVisible"title="标题"width="500"draggable:modal="false":lock-scroll="false":close-on-click-modal="false"modal-class="modal-wrap"class="dialog-wrap"><span>content区域</span><template #footer><div class="dialog-footer"><el-button @click="dialogVisible = false">取消</el-button><el-button type="primary" @click="dialogVisible = false">确定</el-button></div></template></el-dialog>
</div>
</template><script lang="ts" setup>
import { ref } from 'vue'const dialogVisible = ref(false)
const backgroundInput = ref('')</script>
<style scoped>
:deep(.modal-wrap) {pointer-events: none !important;
}
:deep(.dialog-wrap) {pointer-events: auto !important;
}
</style>

【效果】

在这里插入图片描述

【注意】

但请注意,尽管技术上可行,但在实际应用中一般不推荐将对话框设置为非模态,因为这可能会导致意外的交互。所以如果需要在对话框中收集用户输入,最好是在对话框内部添加相应的表单元素。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/142201.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

双三次插值及MATLAB实现

一、双三次插值的概念 双三次插值&#xff08;Bicubic interpolation&#xff09;&#xff0c;又叫双立方插值。在数值分析这个数学分支中&#xff0c;双三次插值是二维空间中最常用的插值方法。在这种方法中&#xff0c;函数f在点 (x0 ,y0) 的值不仅考虑其直接邻接点对其的影响…

mybatis开启日志

步骤很详细&#xff0c;直接上教程 配置文件的文件格式可能有所不同&#xff0c;这里列举两种 配置方法 一. application.properties&#xff08;默认 # 配置mybatis的日志信息 mybatis.configuration.log-implorg.apache.ibatis.logging.stdout.StdOutImpl二. application.y…

基于python+django+vue的在线学习资源推送系统

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、SSM项目源码 系统展示 【2025最新】基于协同过滤pythondjangovue…

工程师 - ACPI介绍_2

Advanced Configuration and Power Interface (ACPI) Introduction and Overview Version 1.4 : 26 April 2016 Copyright © 2016 Intel Corporation. All rights reserved. *Other names and brands may be claimed as the property of others. 本章提供了高级配置和电源…

【ACM出版,录用检索快】2024年第四届工商管理与数据科学国际学术会议 (BADS 2024,10月25-27)

2024年第四届工商管理与数据科学国际学术会议(BADS 2024)将于2024年10月25-27日在中国重庆召开&#xff0c;大会由喀什大学支持。 在当今全球化与数字化迅速发展的时代&#xff0c;工商管理与数据科学作为推动经济增长和技术进步的重要力量&#xff0c;正以前所未有的速度交叉融…

ROS学习笔记1.Mapping

为了执行自主导航&#xff0c;机器人必须拥有环境地图。机器人将使用此地图进行许多操作&#xff0c;例如规划轨迹、避开障碍物等。 您可以为机器人提供预先构建的环境地图&#xff08;在极少数情况下&#xff0c;您已经拥有具有正确格式的地图&#xff09;&#xff0c;也可以…

Go语言开发im-websocket服务和vue3+ts开发类似微信pc即时通讯

前言 IM即时通讯聊天, 为软件开发者打造&#xff0c;不依赖第三方sdk&#xff0c;完全用Go语言开发即时通讯服务&#xff0c;支持H5、Electron、Wails 、Uniapp和各种小程序的IM即时通讯, 快速实现私聊、群聊、在线客服&#xff01;让你快速搭建一个微信聊天系统&#xff0c;打…

浅谈住房城乡建设部科技创新平台布局重点方向

最近住房建设部组织开展住房城乡建设部科技创新平台&#xff08;以下简称部科技创新平台&#xff09;申报工作。详细内容见住房城乡建设部科技创新平台开始申报了 (qq.com)。在这里有4大方向共15个课题。内容见下图&#xff1a; 虽然我是做技术的&#xff0c;但是如何体现创新还…

mycat双主高可用架构部署-水评分表-枚举分片配置

MySQL5.7服务器IP是192.168.31.209及192.168.31.210 vi /usr/local/mycat/conf/schema.xml <?xml version"1.0"?> <!DOCTYPE mycat:schema SYSTEM "schema.dtd"> <mycat:schema xmlns:mycat"http://io.mycat/"><schema n…

AI赋能:无人直播新赛道,防封号、不限流,打造24小时流量引擎!

AI赋能&#xff1a;无人直播新赛道&#xff0c;防封号、不限流&#xff0c;打造24小时流量引擎&#xff01; 在数字化浪潮的推动下&#xff0c;直播行业正经历着前所未有的变革。传统直播模式受限于主播的实时参与、时间和地域的局限&#xff0c;难以满足日益增长的多元化需求。…

java技术栈介绍

Java技术栈是一个庞大而丰富的生态系统&#xff0c;它包含了从基础语言特性到高级框架、库和工具的整个集合。这个技术栈为开发者提供了构建各种类型应用&#xff08;包括企业级应用、Web应用、移动应用、大数据应用等&#xff09;所需的全部组件。以下是对Java技术栈的一个更详…

Windows 上下载、编译 OpenCV 并配置系统环境变量的详细步骤

创作不易&#xff0c;您的打赏、关注、点赞、收藏和转发是我坚持下去的动力&#xff01; 在 Windows 上下载并编译 OpenCV&#xff0c;然后配置系统环境变量的步骤如下&#xff1a; 1. 下载 OpenCV 打开 OpenCV 官方下载页面。找到最新的 Windows 版本&#xff0c;点击下载&…

[产品管理-23]:NPDP新产品开发 - 21 - 产品创新中的市场调研 - 市场调研对创新产品开发的意义

目录 前言&#xff1a; 一、市场调研概述 1.1 客户与市场的区别 1、定义与范围 2、关注焦点 3、作用与影响 4、总结 1.2 销售与市场的区别 1、对象与范围 2、工作方式 3、工作内容 4、目标 5、考核标准 6、在企业运营中的角色 1.3 什么是市场调研 1、市场调研的…

[Python]用Nuitka将 Python 脚本打造为独立高效的可执行文件

nuitka --onefile --ltoyes --standalone --show-modules --show-memory --nofollow-import-tomatplotlib --nofollow-import-toscipy --nofollow-import-topygame --nofollow-import-topyarrow --nofollow-import-tosqlalchemy --nofollow-import-topandas PDF信息提取-含界面…

GUI编程13:JDialog弹窗

视频链接&#xff1a;15、JDialog弹窗_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1DJ411B75F?p15&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 package com.yundait.lesson04;import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; im…

双亲委派机制知识点

类加载器 双亲委派模型 为什么采用双亲委派模型 打破双亲委派机制的场景 Tomcat 打破双亲委派机制:目的是可以加载不同版本的jar包 实现类隔离&#xff1a;在Tomcat中&#xff0c;每个Web应用使用独立的类加载器加载类文件&#xff0c;这样做的好处在于&#xff0c;当在同一T…

【自动化测试】移动app的分层测试以及自动遍历的基本概念

引言 移动应用的分层测试是一种系统化的测试方法&#xff0c;它将测试过程分解为不同的层次&#xff0c;以确保应用在每个层面上都符合设计要求和用户期望 文章目录 引言一、移动app的分层测试1.1 单元测试&#xff08;Unit Testing&#xff09;1.2 集成测试&#xff08;Integr…

k8s集群备份与迁移

什么是 Velero? Velero 是一个用Go语言开发的开源工具&#xff0c;用于 Kubernetes 集群的备份、恢复、灾难恢复和迁移。 Velero备份工作流程 当用户发起velero backup create时&#xff0c;会执行如下四个动作&#xff1a; velero客户端调用Kubernetes API创建自定义资源并…

用于稀疏自适应深度细化的掩码空间传播网络 CVPR2024

目录 Masked Spatial Propagation Network for Sparsity-Adaptive Depth Refinement &#xff08;CVPR 2024&#xff09;用于稀疏自适应深度细化的掩码空间传播网络1 介绍2 算法流程2.1 问题建模2.2 Guidance Network2.3 MSPN 模块 3 实验结果3.1 稀疏度自适应深度细化对比试验…

背包问题(如何定义dp状态)

前言&#xff1a;我们要如何定义dp的定义呢&#xff0c;我们不能像正常那样&#xff0c;定义为花费了 i 钱得到的最大收益&#xff0c;我们这一题需要的是收益为 i 的时候的最小花费&#xff0c;那么我们就需要定义为达到收益为 v 的时候的最小花费 这一题有一个难点就是&#…