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

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <!--<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>-->
    <script type="text/javascript" src="../js/vue.js"></script>
</head>
<body>
<div id="hdcms">

    <!--默认是从里向外冒泡响应事件,从子级->父级元素响应事件,-->
    <div @click="box" :style="{border:'solid 2px red'}">
        <!--prevent是阻止点击a连接跳转,stop是阻止从里向外冒泡响应事件,父级的事件不执行-->
        <a href="https://www.cnblogs.com/haima" @click.prevent="links">从里向外冒泡响应事件</a>
    </div>

    <br>

    <!--capture捕获事件,从父级->子级元素响应事件,-->
    <div @click="box" :style="{border:'solid 2px red'}">
        <!--prevent是阻止点击a连接跳转,stop是阻止从里向外冒泡响应事件,父级的事件不执行-->
        <a href="https://www.cnblogs.com/haima" @click.stop.prevent="links">阻止从里向外冒泡响应事件,阻止点击a连接跳转</a>
    </div>

    <br>

    <!--self点到自己才触发事件,点谁谁响应事件-->
    <div @click.self="box" :style="{border:'solid 2px red'}">
        <!--prevent是阻止点击a连接跳转,由于父级加了self,所以就不会向上冒泡响应事件,效果同上面的stop-->
        <a href="https://www.cnblogs.com/haima" @click.prevent="links">父级加self,阻止a标签冒泡响应事件,点谁谁响应事件</a>
    </div>

    <br>
    <!--capture捕获事件,从父级->子级元素响应事件,-->
    <div @click.capture="box" :style="{border:'solid 2px red'}">
        <!--prevent是阻止点击a连接跳转-->
        <a href="https://www.cnblogs.com/haima" @click.prevent="links">从父级->子级元素响应事件</a>
    </div>
    
    <br>

    <!--once是只绑定一次跳转-->
    <div @click="box" :style="{border:'solid 2px red'}">
        <!--prevent是阻止点击a连接跳转-->
        <a href="https://www.cnblogs.com/haima" @click.once.stop.prevent="links">从父级->子级元素响应事件</a>
    </div>
</div>
<script>
    var app = new Vue({
        el: '#hdcms',
        data: {},
        methods: {
            box(){
                alert('div');
            },
            links(){
                alert('www.cnblogs.com/haima');
            }
        }
    });
</script>
</body>
</html>

效果:

posted @   HaimaBlog  阅读(300)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示