Vue.js中ClickOutside指令的使用方法

分类:知识百科 日期: 点击:0

Vue.js中的ClickOutside指令用于检测点击的位置,如果点击的位置不是指定元素或其子元素,则会触发指令绑定的函数。

// 定义指令
Vue.directive('click-outside', {
  bind: function (el, binding, vnode) {
    el.clickOutsideEvent = function (event) {
      if (!(el == event.target || el.contains(event.target))) {
        vnode.context[binding.expression](event);
      }
    };
    document.body.addEventListener('click', el.clickOutsideEvent)
  },
  unbind: function (el) {
    document.body.removeEventListener('click', el.clickOutsideEvent)
  },
});

使用方法如下:

  • 在Vue实例中定义一个函数,用于处理点击事件:

    methods: {
        handleClickOutside (e) {
          // 处理点击事件
        }
      }
  • 在Vue实例中使用指令:

  • 点击div外的元素,handleClickOutside函数即可被触发。
标签:

版权声明

1. 本站所有素材,仅限学习交流,仅展示部分内容,如需查看完整内容,请下载原文件。
2. 会员在本站下载的所有素材,只拥有使用权,著作权归原作者所有。
3. 所有素材,未经合法授权,请勿用于商业用途,会员不得以任何形式发布、传播、复制、转售该素材,否则一律封号处理。
4. 如果素材损害你的权益请联系客服QQ:77594475 处理。