//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. 入门大数据---Hive分区表和分桶表

    一.分区表 1.1 概念 Hive 中的表对应为 HDFS 上的指定目录,在查询数据时候,默认会对全表进行扫描,这样时间和性能的消耗都非常大. 分区为 HDFS 上表目录的子目录,数据按照分区存储在子 ...

  2. ssh -i 密钥文件无法登陆问题

    一.用ssh 带密钥文件登录时候,发生以下报错 [root@99cloud1 ~]# ssh -i hz-keypair-demo.pem centos@172.16.17.104The authen ...

  3. keras训练函数fit和fit_generator对比,图像生成器ImageDataGenerator数据增强

    1. [深度学习] Keras 如何使用fit和fit_generator https://blog.csdn.net/zwqjoy/article/details/88356094 ps:解决样本数 ...

  4. C# 做的Windows 应用程序 服务

    运行服务: ,cmd下进入目录 cd C:\Windows\Microsoft.NET\Framework\v4.0.30319\ ,安装服务 installutil F:\中原集团\天津CCHR\t ...

  5. css3 小三角的用法

    <div class="arrow-up"> <!--向上的三角--> </div> <div class="arrow-dow ...

  6. 数据库周刊30丨数据安全法草案将亮相;2020数据库产业报告;云南电网上线达梦;达梦7误删Redo Log;Oracle存储过程性能瓶颈;易鲸捷实践案例……

    摘要:墨天轮数据库周刊第30期发布啦,每周1次推送本周数据库相关热门资讯.精选文章.干货文档. 热门资讯 1.数据安全法草案即将亮相:将确立数据分级分类管理.应急处置制度[摘要]数据安全法草案即将在本 ...

  7. 初至cnblogs —— 博客搬迁

    感觉写博客是一种总结.分享知识的有效方式,于是打算坚持通过博客这一载体来提升自己. 最初通过 Hexo + GitHub Page 来搭建个人博客,但是通过这种方式搭建的博客基本没有访问量.个人感觉没 ...

  8. java的运行

    1.打成war包 war需要部署到tomcat中运行. 2.jar包 A 可执行jar包 java -jar some.jar B 普通jar包 java -cp "dir/*" ...

  9. SimpleImputer 中fit和transform方法的简介

    sklearn.impute.SimpleImputer 中fit和transform方法的简介 SimpleImputer 简介 通过SimpleImputer ,可以将现实数据中缺失的值通过同一列 ...

  10. 数据库周刊31丨openGauss 正式开源;7月数据库排行榜发布;浙江移动国产数据库AntDB迁移;oracle ADG跨版本搭建;PG解决社保问题;mysqlbinlog解析……

    摘要:墨天轮数据库周刊第31期发布啦,每周1次推送本周数据库相关热门资讯.精选文章.干货文档. 热门资讯 1.openGauss 正式开源,华为公开发布源代码[摘要]6月1日,华为正式宣布开源数据库能 ...