zoukankan      html  css  js  c++  java
  • VUE课程---12、事件修饰符

    VUE课程---12、事件修饰符

    一、总结

    一句话总结:

    vue中可以可以用事件修饰符来做我们事件操作中常用的阻止默认事件(event.preventDefault())或者阻止事件冒泡(event.stopPropagation())等事件操作
    vue中常用的事件修饰符有.stop(阻止冒泡)、.prevent(阻止默认事件)、.capture(使用事件捕获模式)、.self(事件只在本元素上触发)、.once(事件只触发一次)等
    .stop 阻止事件冒泡
    .prevent 阻止元素的默认事件
    .capture 将js事件机制从默认的冒泡机制转换成捕获机制
    .self 只有自身才能触发事件(不能够被子元素触发)
    .once 事件只触发一次
    
    <!--.stop 阻止事件冒泡-->
    <div class="parent" @click="parentClick">
      <button @click.stop="btnClick">有问题,先看文档先百度</button>
    </div>

    1、vue中常见的事件修饰符?

    vue中常用的事件修饰符有.stop(阻止冒泡)、.prevent(阻止默认事件)、.capture(使用事件捕获模式)、.self(事件只在本元素上触发)、.once(事件只触发一次)等
    .stop 阻止事件冒泡
    .prevent 阻止元素的默认事件
    .capture 将js事件机制从默认的冒泡机制转换成捕获机制
    .self 只有自身才能触发事件(不能够被子元素触发)
    .once 事件只触发一次

    2、vue事件修饰符注意?

    1、修饰符可以串联,比如:<a href="https://fanrenyi.com" @click.prevent.once="preventLink">读书编程笔记</a>
    2、可以只有修饰符,比如:<a href="https://fanrenyi.com" @click.prevent >读书编程笔记</a>

    3、vue中事件修饰符如何使用?

    直接在事件后面接事件修饰符,比如.prevent阻止默认事件:@click.prevent="preventLink":<a href="https://fanrenyi.com" @click.prevent="preventLink">读书编程笔记</a>
    <!--.prevent阻止默认事件-->
    <!--也可以只有修饰符-->
    <a href="https://fanrenyi.com" @click.prevent="preventLink">读书编程笔记</a>

    二、事件修饰符

    博客对应课程的视频位置:12、事件修饰符
    https://www.fanrenyi.com/video/26/229

     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>事件修饰符</title>
     6     <style>
     7         .parent {
     8             width: 250px;
     9             height: 100px;
    10             background-color: lightseagreen;
    11         }
    12         .grandParent{
    13             width: 350px;
    14             height: 200px;
    15             background-color: lightcoral;
    16         }
    17     </style>
    18 </head>
    19 <body>
    20 <!--
    21 
    22 .stop 阻止事件冒泡
    23 .prevent 阻止元素的默认事件
    24 .capture 将js事件机制从默认的冒泡机制转换成捕获机制
    25 .self 只有自身才能触发事件(不能够被子元素触发)
    26 .once 事件只触发一次
    27 
    28 -->
    29 <div id="app">
    30     <!--js默认的冒泡机制-->
    31     <!--    <div class="parent" @click="parentClick">-->
    32     <!--        <button @click="btnClick">有问题,先看文档先百度</button>-->
    33     <!--    </div>-->
    34 
    35     <!--.stop 阻止事件冒泡-->
    36     <!--    <div class="parent" @click="parentClick">-->
    37     <!--        <button @click.stop="btnClick">有问题,先看文档先百度</button>-->
    38     <!--    </div>-->
    39 
    40     <!--.prevent 阻止元素的默认事件-->
    41     <!--    <a href="https://fanrenyi.com" @click.prevent="aClick">让学过的东西不再忘记</a>-->
    42 
    43     <!--.capture 将js事件机制从默认的冒泡机制转换成捕获机制-->
    44     <!--    <div class="parent" @click.capture="parentClick">-->
    45     <!--        <button @click="btnClick">有问题,先看文档先百度</button>-->
    46     <!--    </div>-->
    47 
    48     <!--.self 就是只有自身才能触发事件(不能够被子元素触发)-->
    49 <!--    <div class="grandParent" @click.self="grandParentClick">-->
    50 <!--        <div class="parent" @click.self="parentClick">-->
    51 <!--            <button @click="btnClick">有问题,先看文档先百度</button>-->
    52 <!--        </div>-->
    53 <!--    </div>-->
    54 
    55     <!--.once 事件只被触发一次-->
    56     <div class="grandParent" @click.self="grandParentClick">
    57         <div class="parent" @click.self="parentClick">
    58             <button @click.once="btnClick">有问题,先看文档先百度</button>
    59         </div>
    60     </div>
    61 
    62 </div>
    63 <script src="../js/vue.js"></script>
    64 <script>
    65     new Vue({
    66         el: '#app', //element
    67         data: {},
    68         methods: {
    69             btnClick: function () {
    70                 console.log('按钮被点击了');
    71             },
    72             parentClick() {
    73                 console.log('parent被点击了');
    74             },
    75             aClick: function () {
    76                 console.log('a标签被点击了');
    77             },
    78             grandParentClick(){
    79                 console.log('grandParent被点击了');
    80             }
    81         }
    82     });
    83 </script>
    84 </body>
    85 </html>

     
  • 相关阅读:
    装饰着模式
    观察者模式
    策略模式
    nginx配置图片防盗链
    nginx配置文件详解( 看着好长,其实不长,看了就知道了,精心整理,有些配置也是没用到呢 )
    php引用计数的基本知识
    PHP运行模式
    CURL常用命令--update20151015
    memcache相同主域名下的session共享
    memcached命令行操作详解,命令选项的详细解释
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/12880408.html
Copyright © 2011-2022 走看看