//html
<div id="app">
  <div @click="divHandler" style="height:150px,background-color:darkcyan">
    <input type="button" value="点击" @click="btnHandler">
  </div>   <a href="http://www.bilibili.com" @click="linkClick">跳转到bilibili</a>   <div @click.capture="divClick" style="hight:150px,background-color:grey">
    <input type="button" value="按一下" @click="buttonClick">
  </div>   <a href="http://weibo.com" @click.once="weibo">连接到微博</a>
</div>
//script
<script>
  var vm = new Vue({
    el:'app',
    data:{
      msg:'点击一下'
    },
    methods:{//methods中定义了当前vue实例中所有可用的方法
      divHandler:function(){
       console.log('触发了div的点击事件')
      },
      btnHandler(){
       console.log('触发了btn的点击事件')
      },
      linkClick(){
       console.log('触发了链接的点击事件')
      },
      divClick(){
       console.log('触发了div点击事件')
      },
      buttonClick(){
       console.log('触发了button点击事件')
      }
    }
  })
</script>

简介:

.stop 阻止冒泡

.prevent 阻止默认事件

.capture 添加事件监听器时使用事件捕获方式

.self 只当事件在该元素本身(比如不是子元素)触发时触发回调

.once 事件只触发一次

说明:

点击按钮,控制台会打印 触发了btn的点击事件 触发了div的点击事件 默认是冒泡机制,里边的btn被外边的div包裹着,点击里边的,事件会一层一层往外冒,先调用内层的click在调用外层的click。

如果想阻止冒泡,需要给按钮的click事件加上.stop  格式是  <input type="button" value="点击" @click.stop="btnHandler">,执行的效果就是 只会出发btn的点击事件不会触发外层div的点击事件

当我们点击跳转去bilibili的时候,控制台会打印 触发了链接的点击事件 页面跳转到B站  会跳转。如果我们不想让跳转,可以使用.prevent组织默认事件  格式是  <a href="http://www.bilibili.com" @click.prevent="linkClick"></a>

给外层div的click时间加上.capture  点击按钮的作用效果,就和冒泡相反了 先执行外层div的click事件,在执行内层button的click时间,控制台  触发了div点击事件  触发了button点击事件

如果仅仅想通过点击div来触发div的点击事件,需要给div的click加上.self  格式是<div @click.self="divClick"></div>  其他的不管是冒泡还是捕获 通通都不执行div的点击事件

给click加上once,该点击事件只会被触发一次,不会触发第二次

事件修饰符是可以串联用的@click.prevent.once

vue学习(六) 事件修饰符 stop prevent capture self once的更多相关文章

  1. 27.28. VUE学习之--事件修饰符之stop&capture&self&once实例详解

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Vue – 基础学习(4):事件修饰符

    Vue – 基础学习(3):事件修饰符

  3. [vue]vue v-on事件绑定(原生修饰符+vue自带事件修饰符)

    preventDefault阻止默认行为和stopPropagation终止传递 event.preventDefault() 链接本来点了可以跳转, 如果注册preventDefault事件,则点了 ...

  4. 33、vue中的事件修饰符.stop、.prevent、.self、.capture、.once

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. vue指令与事件修饰符

    一.条件渲染指令 vue中提供了两个指令可以用于判断是否要显示元素,分别是v-if和v-show. 实例: <!DOCTYPE html> <html lang="en&q ...

  6. vue中的事件修饰符

    vue提倡的是在方法中只有对数据的处理,所以提供了事件修饰符用于DOM的事件处理,常用的事件修饰符有以下几个: (1). stop:阻止冒泡(通俗讲就是阻止事件向上级DOM元素传递) 点击内层div的 ...

  7. Vue指令之事件修饰符

    事件修饰符: + .stop 阻止冒泡 + .prevent 阻止默认事件 + .capture 添加事件侦听器时使用事件捕获模式 + .self 只当事件在该元素本身(比如不是子元素)触发时触发回调 ...

  8. 怎样在 Vue 中使用 事件修饰符 ?

    Vue 中可以通过 v-on 来绑定事件监听函数, 不过事件会有许多额外情况, 比如 是否阻止冒泡 / 是否阻止重载 / 是否限制点击次数 / 是否可以通过按键触发 等等. 这时就需要使用到 事件修饰 ...

  9. (二)咋使用VUE中的事件修饰符

    1,stop修饰符:阻止事件冒泡 首先我们要明确H5的事件是从内向外进行冒泡的,写一个简单的DEMO 当我们点击按钮时,事件从内向外冒泡,依次触发绑定的事件,控制台信息如下 现在我们在click后面添 ...

随机推荐

  1. Python 简明教程 --- 12,Python 字典

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 代码写的越急,程序跑得越慢. -- Roy Carlson 目录 Python 字典是另一种非常实用 ...

  2. day18__文件操作

    一.3 种模式 r: 只读模式,        r+: 读写模式,覆盖开头内容 w: 写模式,全覆盖 (如果是没有的文件则重新创建空文件) a+:  读写模式,从最开头写,覆盖开头内容 (如果是没有的 ...

  3. Apache Dubbo Provider默认反序列漏洞复现(CVE-2020-1948)

    Apache Dubbo Provider默认反序列漏洞(CVE-2020-1948) 0x01 搭建漏洞环境 漏洞介绍 2020年06月23日, 360CERT监测发现Apache Dubbo 官方 ...

  4. javamelody对Java Application进行监控

    前面写过对于webapp,用javamelody来监控.分析性能是挺方便的:那要对普通的java应用进行监控,只需要在应用上启动一个嵌入式web容器就可以了. javamelody里面的war包就用了 ...

  5. JavaScript笔记- 函数声明和函数表达式(001)

    function 是 Javascript 中的第一类对象,这就意味着函数可以像其他值一样被传递.一个最常见的用法就是将一个匿名函数作为回调函数传递到另外一个异步函数中. 函数声明 ? 1 funct ...

  6. java语言进阶(一)_Object类_常用API

    第一章 Object类 1.1 概述 java.lang.Object类是Java语言中的根类,即所有类的父类.它中描述的所有方法子类都可以使用.在对象实例化的时候,最终找的父类就是Object. 如 ...

  7. 来看下css边框阴影怎么设置?这些方法掌握后工作更轻松

    我们在网页设计中,通常会使用ps工具来达到图片或者边框阴影.立体等效果.但是如果一些基础效果都需要用p图来完成那就显得效率比较低了.其实可以使用CSS来设置边框阴影,下面本篇文章来给大家介绍一下. 在 ...

  8. 返回报文变成xml格式了!

    首先,google chrome之前有安装jsonview插件: 然后,自己弄springCloud项目,搭建eureka后,访问url发现返回报文变成xml格式了,一通摸索及查找,现整理如下: 1. ...

  9. centos7-修改默认python为3

    安装必要工具 yum-utils: $ sudo yum install yum-utils 使用yum-builddep为Python3构建环境,安装缺失的软件依赖,使用下面的命令会自动处理.$ s ...

  10. TCP Wrappers(简单防火墙)---限制IP登录ssh

    1.TCP Wrappers 简介 TCP_ Wrappers是- 一个工作在第四层(传输层)的的安全工具,对有状态连接(TCP)的特定服务进行安全检测并实现访问控制,界定方式是凡是调用libwrap ...