vue 解除鼠标的监听事件的方法


Posted in Javascript onNovember 13, 2019

描述:在移动端中,我们的首页tab会缓存一些点击事件,比如在机构页面点开了下拉框==》在切换到赛事页面==》在切换回机构页面发现下拉款已经缓存了,是下拉的状态

1.

vue 解除鼠标的监听事件的方法

2.

vue 解除鼠标的监听事件的方法

3.

vue 解除鼠标的监听事件的方法

解决:每次滑动到别的页面的时候就需要解除绑定的点击事件

做法:

1- 首先给父盒子添加 指令:

v-click-outside="hideBox"

vue 解除鼠标的监听事件的方法

2- script标签中 自定义指令

// 自定义指令函数
const clickOutside = {
 // 初始化指令
 bind (el, binding, vnode) {
  function clickHandler (e) {
   // 这里判断点击的元素是否是本身,是本身,则返回
   if (el.contains(e.target)) {
    return false;
   }
   // 判断指令中是否绑定了函数
   if (binding.expression) {
    // 如果绑定了函数 则调用那个函数,此处binding.value就是handleClose方法
    binding.value(e);
   }
  }
  // 给当前元素绑定个私有变量,方便在unbind中可以解除事件监听
  el.__vueClickOutside__ = clickHandler;
  document.addEventListener('click', clickHandler);
 },
 update () { },
 unbind (el, binding) {
  // 解除事件监听
  document.removeEventListener('click', el.__vueClickOutside__);
  delete el.__vueClickOutside__;
 },
};

3-在export default 中注册自定义指令

// 注册自定义指令
 directives: { clickOutside },

4- 最后写上需要恢复下拉的参数

hideBox () {
   this.isSelect = false
   this.selectStatus = false
  },

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
在textarea文本域中显示HTML代码的方法
Mar 06 Javascript
javascript重写alert方法的实例代码
Mar 29 Javascript
js使浏览器窗口最大化实现代码(适用于IE)
Aug 07 Javascript
js 表单提交后按钮变灰的实例代码
Aug 16 Javascript
jquery实现的一个简单进度条效果实例
May 12 Javascript
Node.js的npm包管理器基础使用教程
May 26 Javascript
json格式的javascript对象用法分析
Jul 04 Javascript
基于原生JS实现图片裁剪
Aug 01 Javascript
js仿微博动态栏功能
Feb 22 Javascript
浅谈Node.js 中间件模式
Jun 12 Javascript
浅谈vue3中effect与computed的亲密关系
Oct 10 Javascript
VUE前端从后台请求过来的数据进行转换数据结构操作
Nov 11 Javascript
在vue+element ui框架里实现lodash的debounce防抖
Nov 13 #Javascript
element实现合并单元格通用方法
Nov 13 #Javascript
vue之debounce属性被移除及处理详解
Nov 13 #Javascript
Vue的click事件防抖和节流处理详解
Nov 13 #Javascript
vue表单数据交互提交演示教程
Nov 13 #Javascript
解决vuex数据异步造成初始化的时候没值报错问题
Nov 13 #Javascript
前端vue-cli项目中使用img图片和background背景图的几种方法
Nov 13 #Javascript
You might like
PHP也可以?成Shell Script
2006/10/09 PHP
关于IIS php调用com组件的权限问题
2012/01/11 PHP
PHP输出英文时间日期的安全方法(RFC 1123格式)
2014/06/13 PHP
PHP输出Excel PHPExcel的方法
2018/07/26 PHP
JSON JQUERY模板实现说明
2010/07/03 Javascript
深入理解JS中的变量及作用域、undefined与null
2014/03/04 Javascript
纯js实现无限空间大小的本地存储
2015/06/18 Javascript
jquery实现动静态条形统计图
2015/08/17 Javascript
jquery实现的Banner广告收缩效果代码
2015/09/02 Javascript
JS仿hao123导航页面图片轮播效果
2016/09/01 Javascript
jQuery UI仿淘宝搜索下拉列表功能
2017/01/10 Javascript
js弹出窗口简单实现代码
2017/03/22 Javascript
JavaScript canvas实现围绕旋转动画
2017/11/18 Javascript
javascript实现的字符串转换成数组操作示例
2019/06/13 Javascript
详解解决小程序中webview页面多层history返回问题
2019/08/20 Javascript
解决vue-photo-preview 异步图片放大失效的问题
2020/07/29 Javascript
vue:el-input输入时限制输入的类型操作
2020/08/05 Javascript
js+for循环实现字符串自动转义的代码(把后面的字符替换前面的字符)
2020/12/24 Javascript
python if not in 多条件判断代码
2016/09/21 Python
Python编程实现二分法和牛顿迭代法求平方根代码
2017/12/04 Python
python创建文件备份的脚本
2018/09/11 Python
python画图的函数用法以及技巧
2019/06/28 Python
详解使用django-mama-cas快速搭建CAS服务的实现
2019/10/30 Python
PyCharm2019 安装和配置教程详解附激活码
2020/07/31 Python
plt.figure()参数使用详解及运行演示
2021/01/08 Python
abstract class和interface有什么区别?
2012/01/03 面试题
如何现实servlet的单线程模式
2014/08/05 面试题
校园门卫岗位职责
2013/12/09 职场文书
公司庆典邀请函范文
2014/01/13 职场文书
法学专业毕业生求职信
2014/06/12 职场文书
2015人事行政工作总结范文
2015/05/21 职场文书
刑事上诉状(无罪)
2015/05/23 职场文书
找规律教学反思
2016/02/23 职场文书
jquery插件实现代码雨特效
2021/04/24 jQuery
MySQL分库分表详情
2021/09/25 MySQL
Html5获取用户当前位置的几种方式
2022/01/18 HTML / CSS