首页 > 其他 > 详细

Vue_按键修饰符

时间:2020-06-23 09:37:02      阅读:51      评论:0      收藏:0      [点我收藏+]


Vue中文文档_按键修饰符

常用的按键码的别名

  • .enter
  • .tab
  • .delete
  • .esc
  • .space
  • .up
  • .down
  • .left
  • .right

有一些按键 (.esc 以及所有的方向键) 在 IE9 中有不同的 key 值, 如果你想支持 IE9,这些内置的别名应该是首选。

##自定义按键修饰符 - 你还可以通过全局 config.keyCodes 对象自定义按键修饰符别名:
// 可以使用 `v-on:keyup.f1`
Vue.config.keyCodes.f1 = 112

系统修饰键

  • .ctrl
  • .alt
  • .shift
  • .meta

注意:在 Mac 系统键盘上,meta 对应 command 键 (?)。在 Windows 系统键盘 meta 对应 Windows 徽标键 (?)。在 Sun 操作系统键盘上,meta 对应实心宝石键 (◆)。在其他特定键盘上,尤其在 MIT 和 Lisp 机器的键盘、以及其后继产品,比如 Knight 键盘、space-cadet 键盘,meta 被标记为“META”。在 Symbolics 键盘上,meta 被标记为“META”或者“Meta”。

<!-- Alt + C -->
<input @keyup.alt.67="clear">

<!-- Ctrl + Click -->
<div @click.ctrl="doSomething">Do something</div>

请注意修饰键与常规按键不同,在和 keyup 事件一起用时,事件触发时修饰键必须处于按下状态。换句话说,只有在按住 ctrl 的情况下释放其它按键,才能触发 keyup.ctrl。而单单释放 ctrl 也不会触发事件。如果你想要这样的行为,请为 ctrl 换用 keyCode:keyup.17。

.exact修饰符

.exact 修饰符允许你控制由精确的系统修饰符组合触发的事件。

<!-- 即使 Alt 或 Shift 被一同按下时也会触发 -->
<button @click.ctrl="onClick">A</button>

<!-- 有且只有 Ctrl 被按下的时候才触发 -->
<button @click.ctrl.exact="onCtrlClick">A</button>

<!-- 没有任何系统修饰符被按下的时候才触发 -->
<button @click.exact="onClick">A</button>

鼠标按钮修饰符

  • .left
  • .right
  • .middle

总结

  • 通过代码 @keyup.enter 之类的代码可以完成对键盘事件的事件处理。
  • 通过代码 config.keyCodes自定义按键修饰符别名(注意自定义的是按键修饰符的别名而不是键码,键码是固定不变的例如enter对应13,f2对应113,但是可以对键码添加名称用于调用)
Vue.config.keyCodes.f2=113;
//对113键码(对应f2按键)添加别名f2,这样就可以直接调用f2而不是通过键码才能调用
//@keyup.f2在不设置之前是无效的。
@keyup.f2="doSomething";
//在按下f2时触发对应的事件处理函数
  • 通过代码 @keyup.alt.113 可以为键盘事件"同时按下‘alt‘+‘f2‘键"添加事件处理程序
  • 通过代码 @click.ctrl可以为事件"鼠标左键+ctrl"添加事件处理程序(此时如果ctrl和其它按键一同按下也会触发,因此并不严谨)

Vue_按键修饰符

原文:https://www.cnblogs.com/Syinho/p/12459745.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!