【前端学习日记】Vue中的鼠标事件和键盘事件

这篇具有很好参考价值的文章主要介绍了【前端学习日记】Vue中的鼠标事件和键盘事件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Vue提供了很好用的模板语法,包括插值语法 {{ }} 和指令语法v-?。使用指令语法很容易就可以为文档对象添加事件。

比较常用到的事件就是鼠标事件了。当用户使用鼠标点击网页上的某个元素,或者使用键盘按下某个键,会执行对应的回调(callback),进而在短时间内产生动作。

比如给button标签添加一个click(点击)事件,使用插值语法的简写形式(省略事件绑定语法v-on:click):@click=“showinformation”,即当鼠标点击时,执行showinformation这个函数。

接着在script结构的methods配置项中编写函数的执行步骤和逻辑,就完成了整个事件。

【前端学习日记】Vue中的鼠标事件和键盘事件

上述代码执行后,点击按钮,会在控制台输出事件实例和参数。

在鼠标事件中,常会用到一些修饰符,来起到对事件的限定作用,常用的如:prevent、stop、once。

prevent:阻止默认事件

如对一个超链接标签使用@click.prevent="showinfor",点击超链接,在执行完事件回调后,超链接并不会发生跳转。这些功能真的很秒。比如阻止一些钓鱼链接之类的。

stop:阻止事件冒泡

先讨论一下事件冒泡和捕获这个概念。当元素嵌套的父元素和子元素上都有一个相同(名称和类型均相同)的事件,此时父元素只是一个容器。当我们触发子元素事件,并且产生回调后,父元素(容器)也会执行这个事件,并且总是由内向外的执行顺序,这就是事件冒泡。不过,当我们点击外层父元素时,是不会触发子元素事件的。再说到事件捕获,在触发事件后,未产生回调前,有一个过程,就是事件捕获,它总是由外到内的。如刚刚那个例子,即使我们点击的是子元素,但是捕获的过程却是由父元素到子元素的,所以当我们直接点击父元素,一开始就捕获到了对应事件,是不会触发子元素事件的。

@click.stop="showinfor",stop修饰符的作用就是阻止事件冒泡,在上面那个例子上,点击子元素就不会触发父元素的事件。

【前端学习日记】Vue中的鼠标事件和键盘事件

once:限制事件只作用一次,多次点击只有第一次有效。

还是超链接的例子,@click.once="showinfor",加了once修饰符后,只有第一次点击超链接会发生跳转,但会执行事件回调。

【前端学习日记】Vue中的鼠标事件和键盘事件

 有点意思的是,prevent修饰符一次都不允许跳转,和once修饰符只允许跳转一次。

另外,这些限定功能不同的修饰符,是可以连着写的,如@click.stop.prevent=”showinfor”,既能阻止事件冒泡,也能阻止默认事件,

当然了,鼠标事件除了点击,肯定还有其他事件,从原生js来看,应该还有mouseup、mousedown等等不同场景,取决于项目实际应用场景。


键盘事件

比较常用的键盘事件应该就是keyup(按下释放触发)、keydown(按下即触发)了。

同样使用指令语法(v-on:)@keyup

通过使用Vue提供的一些常用键盘别名,轻松创建键盘事件

enter键事件:@keyup.enter="showinfor"   @keydown.enter="showinfor"

esc键事件:@keyup.esc="showinfor"   @keydown.esc="showinfor"

space键事件:@keyup.space="showinfor"   @keydown.space="showinfor"

方向键事件:@keyup.up="showinfor"   @keydown.up="showinfor"   其他方向均同

特别要注意的是:几个特别的键,ctrl、alt、shift、win(meta)键只能搭配keydown使用,因为这几个特殊的按键本身带有特定的功能,当按下时就会触发跳转,如果搭配keyup,则来不及产生功能回调就已经跳走了。

另外,对于这几个系统修饰键,还可以搭配其他非功能键,实现组合键事件,如@keydown.ctrl.y="showinfor"触发事件需要同时按下ctrl+y键才行。

另外,键盘事件不知道有没有类似于鼠标事件那样的阻止跳转之类的事件修饰符。


再补充一个鼠标滚轮事件

@scroll="shonwinfor"

@wheel="showinfor"

前者针对的是窗口滚动条,当滚动条动作,就会执行相应的回调,它的特点是滚动条要在回调结束后才能动作,所以可以为其加一个passive修饰符,这样就可以达到类似异步执行的效果。

后者针对的是鼠标滚轮,只要鼠标滚轮动作,就会执行相应的回调


以上均为小白拙见。文章来源地址https://www.toymoban.com/news/detail-501435.html

到了这里,关于【前端学习日记】Vue中的鼠标事件和键盘事件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue监听鼠标与键盘事件

     效果:  

    2024年02月16日
    浏览(28)
  • 【前端】vue实现鼠标移入移出事件+解决鼠标事件没有反应

    鼠标移入移出事件代码 methods 这样一个简单的鼠标移入移出事件就完成了。 但是,我在我的标签中加上鼠标移出移入事件过后,并没有什么反应,在查阅了官方文档之后,才发现了加一个属性有可能就能解决这个问题:   即添加native属性即可解决:

    2024年02月07日
    浏览(35)
  • Vue的鼠标键盘事件 pinia和vuex的区别 Vuex 和 Pinia 的优缺点

    鼠标事件(将v-on简写为@) 键盘事件 输入框事件 但是element-ui在实际使用时,前四条触发方法全部都是input方式( 在 Input 值改变时触发 )触发,遂使用原生的@blur才完成效果 表单输入相关修饰符  .lazy     input 输入完毕时 .number   input只获取数字类型的输入 .trim   去除用户输入中

    2024年02月12日
    浏览(37)
  • Vue中 如何监听键盘事件中的按键

    在Web前端开发中,键盘事件的处理是非常常见的需求之一。而在Vue框架中,如何监听键盘事件中的按键是一个相对简单但又很实用的功能。本文将为你介绍如何在Vue中监听键盘事件,并演示一些常用的按键操作。 首先,在Vue中监听键盘事件的方式有两种:一种是直接在DOM元素

    2024年02月20日
    浏览(35)
  • Vue学习:键盘事件

    input表单占位符-显示输入先的提示文本-placeholder属性 键盘事件@keydown——按下 不需要松手 @keyup:按下+松手 根据按键编码进行判断 --输出event上有一个属性-keyCode -按键编码--回车=13 在vue上自带,回车修饰 enter 也就是别名:vue给常用的按键取了别名--一共有9个         回车

    2024年02月08日
    浏览(24)
  • JS 鼠标事件与键盘事件

    一、鼠标事件         onclick        鼠标点击左键触发         onmouseover    鼠标经过触发         onmouseout     鼠标离开触发         onfocus        获得鼠标焦点触发         onblur         失去鼠标焦点触发         onmousemove    鼠标移动出发    

    2024年02月09日
    浏览(33)
  • Qt 事件 < 二 >鼠标键盘事件

    Qt 是一个流行的 C++ 框架,用于构建跨平台的图形用户界面应用程序。在 Qt 中,处理键盘事件和鼠标事件是常见的任务,因为用户输入在交互式应用程序中至关重要。下面是关于 Qt 键盘事件和鼠标事件的学习总结: 键盘事件 (QKeyEvent)使用入门: 事件处理函数: 键盘事件通过

    2024年01月18日
    浏览(37)
  • python 监听键盘事件和鼠标事件

    键盘监听: python有一个很强大的键盘监听库,那就是 keyboard 。他的父类库 pynput 可以实现鼠标监听 可以自行下载 pip install keyboard | pip install pynput 代码参考

    2024年02月13日
    浏览(36)
  • JSP事件——键盘、鼠标、表单

    JS事件通常是指用户通过鼠标或者键盘以及其他方式对浏览器或浏览器网页中的某些节点或者元素进行操作,是用户与浏览器交互最为常见的方式。 1、onclick onclick是最常见的鼠标事件,由用户使用鼠标左键点击后触发相应的函数方法。 document 指的是当前网页 (文档)对象,f

    2024年02月09日
    浏览(32)
  • Unity鼠标键盘事件

    GetMouseButton(0):按下鼠标左键不动,程序会一直运行,松开左键程序停止运行。 GetMouseButton(2):按下鼠标中键不动,程序会一直运行,松开中键程序停止运行。 GetMouseButton(1):按下鼠标右键不动,程序会一直运行,松开右键程序停止运行。 GetMouseButtonDown(0):按下鼠标左键时,程序运

    2023年04月12日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包