zoukankan      html  css  js  c++  java
  • @click事件的修饰符的介绍示例

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <script src="../js/vue.js"></script>
        <style>
            div.box,
            div.box2 {
                background-color: chartreuse;
                 200px;
                height: 200px;
                line-height: 200px;
                text-align: center;
            }
            div.box2 {
                background-color: coral;
            }
        </style>
    </head>
    <body>
        <div id="app">
            <button v-on:click="run">点击</button>
            <p>您点击了{{counter}}次</p>
            <!-- 添加.once事件修饰符,表示事件只会触发一次 -->
            <button @click.once="say('hi')">say hi</button>
            <!--没加事件修饰符.stop -->
            <div @click="box1" class="box">
                <span @click="box">hello Vue</span>
            </div>
            <!--添加修饰事件.capture 在点击内部事件box时,先触发外部被.capture修饰的事件,再触发内部元素的事件-->
            <div @click.capture="box1" class="box2">
                <span @click="box">hello capture</span>
            </div>
            <!-- 添加事件修饰符.stop -->
            <div @click="box1" class="box">
                <span @click.stop="box" >hello prevent</span>
            </div>
            <!-- 添加事件修饰符.self 当前元素自身时触发处理函数-->
            <div @click.self="box1" class="box2">
                <span @click="box">hello self</span>
            </div>



            <!-- 没有添加.prevent时间修饰符 -->
            <a href="https://www.baidu.com">百度</a>
            <!-- 添加.prevent事件修饰符 点击时禁止重载 -->
            <a href="https://www.baidu.com" @click.prevent>百度</a>
            <!-- 事件修饰符可以组合使用 表示第一点击禁止重载,第二次之后就可以跳转 -->
            <a href="https://www.baidu.com" @click.prevent.once>百度</a>
        </div>
        <script>
            var vm = new Vue({
                el: "#app",
                data: {
                    counter: 0,
                },
                methods: {
                    run: function () {
                        // this指代的vm
                        this.counter++;
                    },
                    say: (str) => {
                        alert(str);
                    },
                    box: function () {
                        alert("first run");
                    },
                    box1: function () {
                        alert("second Run");
                    },
                }
            });
        </script>
    </body>
    </html>
  • 相关阅读:
    AngularJS--过滤器
    AngularJS--自定义指令和模板
    AngularJS多模块开发
    百度优先收录HTTPS网站?你的网站https还在等什么
    什么是HTTPS
    必须要懂得的密码技术
    如何处理服务器SSL收到了一个弱临时Diffie-Hellman 密钥?
    可以将代码签名证书安装在多台电脑上吗?
    学习第一天
    前端综合知识小集
  • 原文地址:https://www.cnblogs.com/kukai/p/12421118.html
Copyright © 2011-2022 走看看