如何在vue中为文档更改添加事件侦听器?

时间:2016-10-28 07:13:18

标签: javascript vue.js

我可以在输入表单中添加监视属性。但是如果用户按下键会怎样。我希望当用户在页面上时按下按键。

$(document).keypress(function(event){
            alert(String.fromCharCode(event.which));
        });

但是如何在vue中添加对按键的检查?

2 个答案:

答案 0 :(得分:0)

试试这个

<强> HTML

<div id="test">
  <input v-on:keyup="say()">Say hi</input>
</div>

<强> JS

new Vue({
  el: '#test',
  methods: {
    say: function (e) {
      alert(e.keyCode)
    }
  }
})

答案 1 :(得分:0)

注册全局事件侦听器有两种选择。


如果文档根目录上还有另一个Vue实例,则可以使用自定义事件。

添加到您的主实例:

<body @keydown="this.$emit('onkeydown')">...</body>

以及您的嵌套实例:

<my-component v-on:onkeydown="alert(String.fromCharCode(event.which));"></my-component>

这会发出一个全局事件,该事件被您的嵌套实例捕获。如果您想进一步了解自定义事件,请点击here


如果body元素上没有实例,则可以在创建Vue实例(Example)时在文档上创建事件侦听器:

  methods: {
    onkeydown(e) {
      alert(String.fromCharCode(event.which));
    }
  },

  created() {
    document.onkeydown = this.onkeydown;
  }