美文网首页
vue1.x 事件对象(二)

vue1.x 事件对象(二)

作者: 幺加幺 | 来源:发表于2017-08-21 20:48 被阅读27次

本文主要简述了event 对象,顺便复习了一下事件句柄 (Event Handlers),键盘的一些属性,以及最容易遇到的事件冒泡,同样的阻止事件冒泡,在vue 下是怎样解决的,vue 提供了那些方便去阻止事件冒泡。

1.事件句柄 (Event Handlers)

HTML 4.0 的新特性之一是能够使 HTML 事件触发浏览器中的行为,比如当用户点击某个 HTML 元素时启动一段 JavaScript。下面是一个属性列表,可将之插入 HTML 标签以定义事件的行为。
看图:

image.png

vue事件前面都是没有on,例如:

 @click="vclick($event)"

图片素材截图于w3school

2.鼠标/键盘属性

image.png

说明:上面是属于event 对象的属性
例子:

    function box2click(event){
        // alert(1);
        console.log('box2');
        console.log(event);
        if(event.altKey){
            console.log('事件被触发时候 alt 键被按下');
        }
    }

3.IE属性

image.png

4.标准 Event 属性

image.png

type 可以知道是那个事件类型如

image.png

5.标准的Event 方法

image.png

6.以前的事件冒泡

div 里面放一个按钮,给div和按钮都加上点击事件

image.png

javascript处理方法:

    // 以前获取事件的方式
    function btnclick(event){
        // alert(1);
        console.log('以前的');
        console.log(event);
        //以前停止事件冒泡的方法
        //eventent.stopPropagation();
    }

    function box2click(event){
        // alert(1);
        console.log('box2');
        console.log(event);
        if(event.altKey){
            console.log('事件被触发时候 alt 键被按下');
        }
    }

对比vue 的方式
html 部分:

image.png

javascript 部分:

  var vm = new Vue({
        el:'body',
        data () {
            return {
                msg:'hello'      
            }
        },
        methods: {
            vclick(event){
                // alert('vue click');
                
                console.log(event);
                console.log('btn');
                //event.stopPropagation();
                event.cancelBubble=true;
            },
            boxClick(event){
                // alert('box click');
                console.log(event);
            }
        }
    })

阻止冒泡简写方式:
html关键部分:

image.png

methods 方法部分:

      stopClick(){
          console.log('stopClick');
      }

阻止默认事件

html部分:

image.png

methods 方法部分:

    // 阻止鼠标右键
    menuClick(){
       alert('menu');
       // event.preventDefault();
    }

事件的对象代码

键盘事件

image.png
    var vm = new Vue({
        el:'body',
        methods: {
            keydownFnc(event){
                console.log(event);
                console.log(event.keyCode)
            }
        }
    })

vue 提供了一些常用的方法,例如 @keyup.enter 按回车事件被触发。
键盘事件的代码链接

其他:
vue1.x 基础使用(一)

相关文章

  • vue1.x 事件对象(二)

    本文主要简述了event 对象,顺便复习了一下事件句柄(Event Handlers),键盘的一些属性,以及最容易...

  • React 事件对象 获取DOM

    一、事件对象 在触发DOM上的某个事件时,会产生一个事件对象event。这个对象包含着所有与事件有关的信息。 二、...

  • Android 模拟触摸动作MotionEvent事件

    一、前言: 模拟触屏事件需要两个步骤,一是获得事件对象MotionEvent,二是分发该事件对象。 1.获得事件对...

  • JQuery-事件绑定与解绑

    元素绑定事件 第一种方式:对象.事件名字(事件处理函数); 第一种写法链式编程 第二种方式:对象.bind(‘事件...

  • js和JQuery获取位置及大小的区别

    [原生JS] 一、offSet系列 二、client系列 三、事件对象 (1)鼠标事件 (2)移动端触摸事件 四、...

  • vue2.x中组件间事件的派发与接收

    在项目开发过程中,我们可能会需要在两个组件间进行事件的通信。 一、在vue1.x中 使用broadcast进行通信...

  • js小知识4

    一、BOM 二、获取元素的各种信息 三、瀑布流 四、事件、事件对象 五、拖拽

  • JavaScript事件03——事件对象

    大纲:事件对象(DOM中的事件对象,IE中的事件对象,跨浏览器) 一、事件对象 什么是事件对象? 在触发DOM上的...

  • 【事件】事件对象

    触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的额信息。(包括导致事件的元...

  • 事件对象

    事件对象:当触发某种事件时,可以获取一个对象,该对象与触发的事件是相关的,我们把他们称之为事件对象 事件对象也是一...

网友评论

      本文标题:vue1.x 事件对象(二)

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