点击空白处弹出框取消

news2025/4/9 12:13:55

新建click-outside.js文件

const clickoutsideContext = '@@clickoutsideContext'

export default {
  /*
   @param el 指令所绑定的元素
   @param binding {Object} 
   @param vnode vue编译生成的虚拟节点
   */
  bind(el, binding, vnode) {
    const documentHandler = function(e) {
      if (!vnode.context || el.contains(e.target)) {
        return false
      }
      if (binding.expression) {
        vnode.context[el[clickoutsideContext].methodName](e)
      } else {
        el[clickoutsideContext].bindingFn(e)
      }
    }
    el[clickoutsideContext] = {
      documentHandler,
      methodName: binding.expression,
      bindingFn: binding.value
    }
    setTimeout(() => {
      document.addEventListener('click', documentHandler)
    }, 0)
  },
  update(el, binding) {
    el[clickoutsideContext].methodName = binding.expression
    el[clickoutsideContext].bindingFn = binding.value
  },
  unbind(el) {
    document.removeEventListener(
      'click',
      el[clickoutsideContext].documentHandler
    )
  }
}

全局使用在main.js中引入,我这里是在assets/js文件中,引入时按照自己的路径引入

import clickOutside from '../../assets/js/click-outside'
Vue.directive('clickoutside', clickOutside)

页面使用,在弹框元素上添加v-clickoutside="事件名" 

在methods中写相应的逻辑

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

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

相关文章

Python通过Flask+pyecharts对房地产数据实现数据分析结果Web可视化(二)

一、背景 在Python通过pyecharts对爬虫房地产数据进行数据可视化分析(一)基础上添加Flask框架实现web可视化功能,把生成的所有图表生成一份完整的数据分析报告,这样就可以方便直接在网页上看到整体的数据分析可视化结果。 二、步骤…

协同设计有哪些优势和作用?

组织结构越来越复杂,团队中的每个人都有独特的技能、经验和专业知识。我们如何才能让团队更好地合作?在这种情况下,协同设计应运而生。在本文中,将讨论什么是协同设计,如何帮助我们创造高质量的产品。 什么是协同设计…

RFNet模型数据集采集处理流程

文章目录 cityscapes数据集内容如何标注数据得到标签图片 cityscapes数据集内容 训练模型的时候下载了cityscapes里的disparity、gtFine和leftImg8bit。 共5000张图片。2975张训练,500张验证,1525test。每个目录下都有train、test和val的子目录,这些子…

vue3动态引入图片(:src)

vite 官方默认的配置,如果资源文件在assets文件夹打包后会把图片名加上 hash值,但是直接通过 :src"imgSrc"方式引入并不会在打包的时候解析,导致开发环境可以正常引入,打包后却不能显示的问题 实际上我们不希望资源文…

虚拟机构建部署单体项目及前后端分离项目

目录 一.部署单体项目 1.远程数据库 1.1远程连接数据库 1.2 新建数据库运行sql文件 2.部署项目到服务器中 3.启动服务器运行 二.部署前后端分离项目 1.远程数据库和部署到服务器 2.利用node环境启动前端项目 3.解决主机无法解析服务器localhost问题 方法一 ​编辑 方…

什么?Postman也能测WebSocket接口了?

01、WebSocket 简介 WebSocket是一种在单个TCP连接上进行全双工通信的协议。 WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直…

Python爬虫基础之Requests详解

目录 1. 简介2. 安装3. 发送请求4. 处理响应5. IP代理6. Cookie登录参考文献 原文地址:https://program-park.top/2023/10/27/reptile_4/ 本文章中所有内容仅供学习交流使用,不用于其他任何目的,严禁用于商业用途和非法用途,否则由…

IEEE Standard for SystemVerilog Chapter9. Processes

9.1 General 本条款描述了以下内容: --结构化程序(initial程序、always程序、final程序) --块语句(begin-end顺序块,fork-join并行块) --时序控制(delays, events, wa…

【计算机网络】应用层——HTTP协议

目录 1.HTTP协议简介2.认识URL3.urlencode和urldecode4.HTTP请求协议和响应协议HTTP请求协议HTTP响应协议 5.HTTP请求方法6.HTTP状态码7.HTTP常见的Hander8.Cookie和Session 1.HTTP协议简介 HTTP(Hyper Text Transfer Protocol)协议又叫做超文本传输协议…

24 行为型模式-访问者模式

1 访问者模式介绍 访问者模式在实际开发中使用的非常少,因为它比较难以实现并且应用该模式肯能会导致代码的可读性变差,可维护性变差,在没有特别必要的情况下,不建议使用访问者模式。 2 访问者模式原理 3 访问者模式实现 我们以超市购物为例,假设超市中的三类商品: 水果,糖…

嵌入式软件工程师面试题——2025校招专题(四)

说明: 面试题来源于网络书籍,公司题目以及博主原创或修改(题目大部分来源于各种公司);文中很多题目,或许大家直接编译器写完,1分钟就出结果了。但在这里博主希望每一个题目,大家都要…

python——requests模块

requests不是python的内置库,需要手动安装: pip install requests 一. 一个类型和六个属性 1.1 类型 requests访问url后返回的对象类型为requests.models.Response类型。 1.2 属性 下面是requests.models.Response类型对象的方法。 text:以…

【Javascript】json

目录 什么是json? 书写格式 json 序列化和反序列化 序列化 反序列化 什么是json? JSON(JavaScript Object Notation)是⼀种轻量级的数据交换格式,它基于JavaScript的⼀个⼦集,易于⼈的编写和阅读,也易于机器解析…

OSG开发笔记(二十九):OSG加载模型文件、加载3DMax三维型文件Demo

​ 若该文为原创文章,未经允许不得转载 本文章博客地址:https://blog.csdn.net/qq21497936/article/details/134064988 各位读者,知识无穷而人力有穷,要么改需求,要么找专业人士,要么自己研究 红胖子(红模…

班主任必get,超实用的成绩发布方式

分享给老师们一个超级实用的教程,看看如何使用各种代码和Excel实现学生自主查询成绩的功能吧!不用再繁琐的手动操作,让学生和家长自己就能查到成绩! 成绩查询系统是什么? 成绩查询系统是一种方便学生查询考试成绩的应…

Android 和 iOS APP 测试的那些区别

目前市面上主流的移动操作系统就是 Android 和 iOS 两种,移动端测试本身就跟 Web 应用测试有自己的专项测试,比如安装、卸载、升级、消息推送、网络类型测试、弱网测试、中断测试、兼容性测试等都是区别于 Web 应用需要关注的测试领域。 那么&#xff0…

办公用品经营配送小程序商城的作用是什么

对办公人员来说,办公设备是不可缺少的,对办公用品经营商家来说,市场生意很高很多,但想要获取却也不容易,线下方式难以拓展,线上无平台,入驻第三方也有诸多限制与不足,私域是商家们增…

关键词搜索1688商品数据接口(标题|主图|SKU|价格|优惠价|掌柜昵称|店铺链接|店铺所在地)

1688商品列表接口是一个用于获取1688网站上商品列表信息的接口。通过该接口,您可以获取到1688网站上不同类别的商品列表,包括商品的名称、价格、图片等信息。 要使用1688商品列表接口,您需要按照以下步骤进行操作: 登录1688网站…

Linux 磁盘挂载2(文件系统格式化、磁盘挂载、VFS虚拟化文件系统)

目录 Linux文件系统 文件系统类型 Linux如何保存文件 VFS虚拟文件系统 文件格式化命令 mkfs 格式化文件系统 磁盘挂载命令 mount 临时挂载命令 umount 卸载文件系统 vim /etc/fstab 永久挂载 Linux文件系统 Linux 磁盘挂载1(硬盘分区)_linux磁…

高效遮挡!一键隐藏Logo标志,让您的内容更自由!

亲爱的用户,您是否曾经因为在营销、宣传、推广等领域使用的图片或视频中,存在不合适的Logo标志而感到烦恼?现在,我们向您推荐一款高效的遮挡工具,让您轻松隐藏Logo标志,让您的内容更自由! 第一…