欢迎来到代码驿站!

vue

当前位置:首页 > 网页前端 > vue

vue.js中修饰符.stop的用法解析

时间:2022-07-15 08:34:26|栏目:vue|点击:

修饰符.stop的用法

.stop修饰符是用来阻止冒泡事件的发生的。

用法如下

<a v-on:click.stop="doThis"></a>

下面是全部的代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="vue.js"></script>
</head>
<style>
    #gpa {
        margin: 0 auto;
        width: 100px;
        height: 60px;
        background: green;
    }
    #pa {
        width: 60px;
        height: 40px;
        background: pink;
        margin: 0 auto;
        text-align: center
    }
</style>
<body>
//--------------------------------重点是这一部分代码。
<div id="gpa" v-on:click="dodo">
    <div id="pa" v-on:click="doThat">
        <a  v-on:click.stop="doThis" href="http://www.baidu.com" rel="external nofollow" >百度</a>
    //点击百度的时候不发生冒泡,执行doThis函数,然后跳转到百度首页。
    </div>
    //点击粉色部分,即pa部分,发生冒泡,执行doThat,dodo函数。
</div>
</body>
<script>
    var gpas = new Vue({
        el:'#gpa',
        data:{
        },
        methods:{
            doThis:function(){
                alert("doThis");
            },
            doThat:function (){
                alert("doThat")
            },dodo:function(){
                alert("dodo")
            }
        }
    })
    </script>
</html>

stop事件修饰符

修饰符 说明
.stop 阻止冒泡

stop事件修饰符具体介绍

.stop

.stop用来防止冒泡

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <script src="./lib/vue-2.4.0.js"></script>
    <style>
            .inner {
              height: 150px;
              background-color: gold;
            }
        
            .outer {
              padding: 40px;
              background-color: red;
            }
          </style>
</head>
<body>
    
    <div id="app">
            <div class="inner" @click="div1Handler">
                    <input type="button" value="点击" @click="btnHandler">
            </div>
    </div>
    <script>
        var vm = new Vue({
            el:"#app",
            data: {
            },
            methods: {
                div1Handler() {
                    console.log('这是触发了 inner div 的点击事件')
                },
                btnHandler() {
                    console.log('这是触发了 btn 按钮 的点击事件')
                }
            }
        })
    </script>
</body>
</html>

页面操作效果

我们看到不光点击按钮的点击事件触发了,而且父容器div的点击事件也触发了,这时我们就可以使用.stop来阻止这个冒泡了,如下

在访问测试

通过输出可以看到点击事件没有往上冒泡了!

上一篇:vue项目打包部署后默认路由不正确的解决方案

栏    目:vue

下一篇:vue滑动解锁组件使用方法详解

本文标题:vue.js中修饰符.stop的用法解析

本文地址:http://www.codeinn.net/misctech/207824.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有