美文网首页
事件绑定

事件绑定

作者: 灯光树影 | 来源:发表于2018-10-23 20:13 被阅读0次

一、前言

vue的事件绑定通过v-on指令进行绑定,事件触发时,可以使用$event访问事件对象。

二、使用

<div id="app">
    <p v-on:click="reverseText($event)">{{ content }}</p>
</div>
<script>
var app = new Vue({
    el: '#app',
    data: {
        content: 'Hello World'
    },
    methods: {
        reverseText: function(event){
            console.log(event.target); 
            this.content = this.content.split("").reverse().join("");
        }
    }
});
</script>

当点击p标签时,reverseText被调用,event.target在控制台的打印结果为:
<p>Hello World</p>

提示:绑定事件时,v-on:click中可以写js表达式,有参或无参函数调用,随时
            可以使用$event作为实参传递事件对象。
补充:$refs属性也可以得到dom对象。

三、事件修饰符

在绑定事件时,可以添加修饰符进行进一步的约束,或者一些逻辑的添加。事件修饰符通过.连接

  • 使用
<div id="app">
    <p v-on:click.once="reverseText($event)">{{ content }}</p>
</div>
<script>
var app = new Vue({
    el: '#app',
    data: {
        content: 'Hello World'
    },
    methods: {
        reverseText: function(event){
            console.log(event.target); 
            this.content = this.content.split("").reverse().join("");
        }
    }
});
</script>

上面代码添加了once的修饰符,约束事件只能触发一次。如果有多个修饰符可以继续使用.连接,比如:
<p v-on:click.once.prevent="reverseText($event)">{{ content }}</p>

  • 常用修饰符
  1. 通用
    .stop 停止事件的派发(捕获,冒泡等)
    .prevent 禁止默认行为
    .capture 捕获事件,先处理,再由内部元素处理
    .self 自身触发事件才执行
    .once 事件只执行一次
    .passive 立即触发默认行为,忽略.prevent
  2. 按键
    .enter
    .tab
    .delete (捕获“删除”和“退格”键)
    .esc
    .space
    .up
    .down
    .left
    .right
    | 提示:可以通过Vue.config.keyCodes.f1 = 112的形式自定义
  3. 组合
    .ctrl
    .alt
    .shift
    .meta
  4. 鼠标
    .left
    .right
    .middle
  5. exact 完全等于修饰约束才触发事件

exact的例子:

<!-- 即使 Alt 或 Shift 被一同按下时也会触发 -->
<button @click.ctrl="onClick">A</button>
<!-- 有且只有 Ctrl 被按下的时候才触发 -->
<button @click.ctrl.exact="onCtrlClick">A</button>

.

相关文章

  • JS 事件监听、事件委托2018-07-10

    //常规的事件绑定只执行最后绑定的事件 //使用事件监听绑定事件 //可以绑定多个事件 //语法element.a...

  • JS-事件绑定

    一、addEventListener : 事件绑定另外一种绑定事件的方法。优点:可以绑定多个事件,之后绑定的事件...

  • 事件绑定、事件冒泡与捕获

    一、事件绑定事件绑定又称事件委托,事件代理,可以给同一个div绑定多个事件 非IE: IE: 绑定事件兼容写法:(...

  • 025 JS事件

    JS事件 ********* 一、事件的两种绑定方式 ******* 1、on事件绑定方式 2、非on事件绑定方式...

  • IE的attachEvent

    事件绑定分为传统的事件绑定和现代的事件绑定 传统的事件绑定的一般形式为: 现代的事件绑定分为W3C的addEve...

  • JavaScript事件

    事件分类 事件的绑定方法 通过标签绑定事件 通过js获取DOM元素绑定事件 通过addEventListener属...

  • js事件

    JS事件 事件绑定方式 事件对象 事件传播流 事件代理 一、事件绑定方式 方式一:通过HTML标签行间属性内绑定 ...

  • 绑定事件 自定义事件 事件冒泡

    绑定事件 bind命令同时绑定多个事件 unbind取消绑定 自定义事件 trigger是触发事件 事件冒泡 ev...

  • jQuery事件

    一、基础事件 1、绑定事件 bind();参数一:要绑定事件函数的事件名。参数二:要绑定的事件函数(事件函数名),...

  • 2018-10-18

    JS事件 一、事件的两种绑定方式 ******* 1、on事件绑定方式 2、非on事件绑定方式 二、事件参数eve...

网友评论

      本文标题:事件绑定

      本文链接:https://www.haomeiwen.com/subject/dovozftx.html