<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>键盘事件</title>
<script type="text/javascript" src="../js/vue.js"></script>
<style>
*{
/* 让所有元素之间有20px的间距 */
margin-top: 20px;
}
.demo1{
height: 50px;
background-color:skyblue
}
.box1{
padding:5px;
background-color: skyblue;
}
.box2{
padding:5px;
background-color: orange;
}
</style>
</head>
<body>
<div id="root">
<h2>欢迎来到{{name}}学习</h2>
<!-- Vue中常用的按键别名:
回车----enter
删除----delete
退出----esc
空格----space
换行----tab
上----up
下----down
左----left
右----right
-->
<input type="text" placeholder="按下回车提示输入" @keyup.enter="showInfo">
</div>
</body>
<script type="text/javascript">
Vue.config.productionTip = false//阻止.vue在启动时生成生产提示。
new Vue({
el:'#root',
data:{
name:'尚硅谷',
},
methods:{
showInfo(e){
// if(e.keyCode!==13)return //13是enter键的编码
// console.log(e.keyCode)
console.log(e.target.value)
},
}
})
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>事件的基本使用</title>
<script type="text/javascript" src="../js/vue.js"></script>
<style>
*{
margiin-top: 20px;
}
.demo1{
height: 50px;
background-color:skyblue
}
</style>
</head>
<body>
<div id="root">
<h2>欢迎来到{{name}}学习</h2>
<button v-on:click="showInfo01">点我提示信息1</button>
<button @click="showInfo02(66,$event)">点我提示信息2</button>
<!-- 传参用小括号,不传参不用小括号 -->
<a href="http://www.atguigu.com" @click.prevent="showInfo">点我提示信息</a>
</div>
</body>
<script type="text/javascript">
Vue.config.productionTip = false//阻止.vue在启动时生成生产提示。
new Vue({
el:'#root',
data:{
name:'尚硅谷',
},
methods:{
showInfo(e){
e.preventDefault()
alert("同学你好")
},
showInfo01(a,b,c,d){
console.log(a,b,c,d)
// alert("同学你好")
},
showInfo02(number,a){
console.log(number,a)
// alert("同学你好!!")
}
}
})
</script>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>事件修饰符</title>
<script type="text/javascript" src="../js/vue.js"></script>
<style>
*{
/* 让所有元素之间有20px的间距 */
margin-top: 20px;
}
.demo1{
height: 50px;
background-color:skyblue
}
.box1{
padding:5px;
background-color: skyblue;
}
.box2{
padding:5px;
background-color: orange;
}
</style>
</head>
<body>
<div id="root">
<h2>欢迎来到{{name}}学习</h2>
<!-- 阻止默认事件(常用) -->
<a href="http://www.atguigu.com" @click.prevent="showInfo">点我提示信息</a>
<div class="demo1"@click="showInfo">
<!-- 阻止事件冒泡(常用) -->
<button @click.stop="showInfo">点我提示信息</button>
</div>
<!-- 事件只触发一次(常用) -->
<button @click.once="showInfo">点我提示信息</button>
<!-- 使用事件的捕获模式 -->
<div class="box1"@click.capture="showMsg(1)">
div1
<div class="box2"@click="showMsg(2)">
div2
</div>
</div>
</div>
</body>
<script type="text/javascript">
Vue.config.productionTip = false//阻止.vue在启动时生成生产提示。
new Vue({
el:'#root',
data:{
name:'尚硅谷',
},
methods:{
showInfo(e){
// e.preventDefault()
// e.stopPropagation()
alert("同学你好")
},
showMsg(a){
console.log(a)
}
}
})
</script>
</html>