学习Vue(7)——v-on处理事件

在vue中如按钮、鼠标的事件可以使用v-on指令进行监听。

v-on:click使用

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>学习Vue</title>
		<!-- 使用CDN引入Vue.js -->
		<script type="text/javascript" src=" https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.8/vue.min.js"></script>
	</head>
	<body>
		<div id="app">
			<!-- 这个调用了一个名为clickMe的函数方法,没有传递任何参数 -->
			<button type="button" v-on:click="clickMe">点我</button>
			<!-- 这个调用了一个名为whoClickMe的函数方法,传递了一个参数 -->
			<button type="button" v-on:click="whoClickMe('张三')">点我(传递参数)</button>
		</div>

		<script type="text/javascript">
			var vm = new Vue({
				el: '#app',
				methods: {
					// 名为clickMe的函数方法
					clickMe: function() {
						alert("你点我了哟!");
					},
					// 名为whoClickMe的函数方法
					whoClickMe: function(name) {
						alert(name + ",你点我了哟!");
					}
				}
			});
		</script>
	</body>
</html>

浏览器效果:

事件修饰符

Vue.js 为 v-on 提供了事件修饰符来处理 DOM 事件细节,如:event.preventDefault() 或 event.stopPropagation()。

Vue.js通过由点(.)表示的指令后缀来调用修饰符。

  • .stop
  • .prevent
  • .capture
  • .self
  • .once

按键修饰符

Vue 允许为 v-on 在监听键盘事件时添加按键修饰符:

<!-- 只有在 keyCode 是 13 时调用 vm.submit() -->
<input v-on:keyup.13="submit">

记住所有的 keyCode 比较困难,所以 Vue 为最常用的按键提供了别名:

<!-- 同上 -->
<input v-on:keyup.enter="submit">
<!-- 缩写语法 -->
<input @keyup.enter="submit">

全部的按键别名:

  • .enter
  • .tab
  • .delete (捕获 "删除" 和 "退格" 键)
  • .esc
  • .space
  • .up
  • .down
  • .left
  • .right
  • .ctrl
  • .alt
  • .shift
  • .meta

实例

<p><!-- Alt + C -->
<input @keyup.alt.67="clear">
<!-- Ctrl + Click -->
<div @click.ctrl="doSomething">Do something</div>
发布了394 篇原创文章 · 获赞 41 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/cnds123321/article/details/104029859
今日推荐