vue(js)点击目标div以外区域将目标div隐藏
今天开发新项目的时候,有个需求,点击一个div 展示出个弹出窗 弹出窗标题的颜色要跟点击的div图标颜色一致,
所以这就需要我遍历一下多个数据,
然后需要点击弹出div的外部其他区域,隐藏这个div。所以 有了以下操作!

这个点击事件@click.stop="isPop(item.event)" 加上.stop 起阻止冒泡的效果,这里很重要,具体原因就暂时不解释了 。做的时候就会理解了;
目标div 是被 item.popShow 控制的,我给出我数组的格式
fiveList: [
{
img: "./images/case/blockchain/1@2x.png",
popShow: false,
color: "rgba(245, 134, 125, 1)",
title: "区块链钱包",
content:
"支持各类底层协议类钱包开发,如比特币、以太坊等代币开发和私有链的搭建,可完美对接会员系统和交易系统。"
},
{
img: "./images/case/blockchain/2@2x.png",
popShow: false,
color: "#6cd286",
title: "会员算力系统",
content:
"会员算力系统包括会员管理系统、会员奖励制度、会员推荐制度,可对接商城系统,游戏等应用场景。"
},
{
img: "./images/case/blockchain/3@2x.png",
popShow: false,
color: "#36b5f0",
title: "数字币交易系统",
content:
"分会员算力系统内置交易系统和独立交易系统,点对点交易。会员算力系统y无缝对接。"
},
{
img: "./images/case/blockchain/4@2x.png",
popShow: false,
color: "#ffa930",
title: "大型交易所系统",
content:
"支持C2C交易、币币交易、OTC场外交易。内存运行,速度快,高效,稳定。"
},
{
img: "./images/case/blockchain/5@2x.png",
popShow: false,
color: "#a676e4",
title: "专业的开发团队",
content:
"开发团队精通区块链数字币等技术,精通各种会员奖金制度算法和各类交易系统的开发。"
}
],
然后如果单纯的需要控制这个div的显示与隐藏的话,就一条代码足矣

那么如何获取这个div的其他外部区域呢?

box 是弹出窗div的 id;
这样就能在内和在外操作了;
众所周知。 我们如果需要在这里面控制每个被点击的div的话,直接 this.xxx=false; 是不行的 原因你们应该也懂;
列出关键代码:

先var 一个 空数组;循环弹出层数组,拿到每个弹出层此时的 true or false 的状态

这是我点击第一个。所以就是 第一个 为true 其他都是 false了;
所以这里的逻辑就是,当这个div的状态为true时,将这个为true的数组 push 进 popList 中;然后点击 “在外” 那里将它隐藏就好了

因此就达到了想要的效果
vue(js)点击目标div以外区域将目标div隐藏的更多相关文章
- 邂逅Vue.js
1.简单认识一下Vue.js Vue (读音 /vjuː/,类似于 view),不要读错. Vue是一个渐进式的框架,什么是渐进式的呢? p渐进式意味着你可以将Vue作为你应用的一部分嵌入其中,带来更 ...
- Vue.js 学习笔记 一
本文的Demo和源代码已放到GitHub,如果您觉得本篇内容不错,请点个赞,或在GitHub上加个星星! https://github.com/zwl-jasmine95/Vue_test 以下所有知 ...
- Vue js 的生命周期详解
Vue 实例的生命周期 Vue 实例有一个完整的生命周期,也就是从开始创建.初始化数据.编译模板.挂载Dom→渲染.更新→渲染.卸载等一系列 过程,我们称这是 Vue 的生命周期.通俗说就是 Vue ...
- Web前端-Vue.js必备框架(四)
Web前端-Vue.js必备框架(四) 计算属性: <div id="aaa"> {{ message.split('').reverse().join('') }} ...
- Vue.js+vue-element搭建属于自己的后台管理模板:更深入了解Vue.js(三)
前言 上一章我们介绍了关于Vue实例中一些基本用法,但是组件.自定义指令.Render函数这些放到了本章来介绍,原因是它们要比前面讲的要难一些,组件是Vue.js最核心的功能,学习使用组件也是必不可少 ...
- Vue.js之入门
1.What is Vue.js? Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架,通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件. 2.引入 ...
- Vue.js进阶
<!-- 动态Props --><!DOCTYPE html> <html lang='utf-8'> <head> <meta charset= ...
- Vue.js学习 Item1 --快速入门
我们以 Vue 数据绑定的快速导览开始.如果你对高级概述更感兴趣,可查看这篇博文. 尝试 Vue.js 最简单的方法是使用 JSFiddle Hello World 例子.在浏览器新标签页中打开它,跟 ...
- vue.js语法
Vue.js是当下很火的一个JavaScript MVVM(Model-View-ViewModel)库,它是以数据驱动和组件化的思想构建的.相比于Angular.js,Vue.js提供了更加简洁.更 ...
随机推荐
- 今天跟outlook顶上牛了
之前使用的是2007,然后之前弄东西的时候给升到2010了,之前就是把所有的邮件都保存到本地的文件中,我还想使用之前的文件,然后2010就是不好使,后来查了半天发现原来是需要手动创建账户,参考http ...
- python3.x使用cxfreeze将.p打包成.exe
之前写了一个使用ffplay批量查看格式为h264的图片,每次抽帧后都要打开pycharm编译器来运行程序,然后才能正常查看图片,或者在其他没有安装python环境的电脑中运行,很不方便.为此,在网上 ...
- [BZOJ4305]数列的GCD:莫比乌斯反演+组合数学
分析 一开始想的是对恰好\(k\)个位置容斥,结果发现对\(\gcd\)有些无从下手,想了想发现自己又sb了. 考虑对\(\gcd\)进行容斥处理,弱化条件,现在我们要求的是使\(\gcd\)是\(d ...
- selenium+常见操作
1.多窗口操作 有些页面的链接打开后,会重新打开一个窗口,对于这种情况,想在新页面上操作,就得先切换窗口了.获取窗口的唯一标识用句柄表示,所以只需要切换句柄,我们就能在多个页面上灵活自如的操作了. 句 ...
- Apache Drill 调研学习
Apache Drill 调研学习 ## 一.Drill概述 在大数据时代,对于Hadoop中的信息,越来越多的用户需要能够获得快速且互动的分析方法.大数据面临的一个很大的问题是大多数分析查询都很缓慢 ...
- 大哥带我们的mysql注入 基于bool的盲注
盲注 那么我们来了解一点盲注的语法 这里面是语法的介绍 https://blog.csdn.net/alex_seo/article/details/82148955 0X01第一步我们先判断当前数据 ...
- Spring Data JPA学习笔记
下面先来介绍一下JPA中一些常用的查询操作: //And --- 等价于 SQL 中的 and 关键字,比如 findByHeightAndSex(int height,char sex): publ ...
- 流程控制 if else elif
[root@LV work]# [root@LV work]# vim name.py[root@LV work]# chmod +x name.py [root@LV work]# ./name.p ...
- python蒙特卡洛脚本模拟—挑战者号爆炸概率
python机器学习-乳腺癌细胞挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...
- Docker部署MySQL8并实现远程连接
1. 拉取镜像 docker pull mysql 2. 运行镜像启动容器 docker run --name mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=y ...