parent
3f6dced267
commit
5a27defe03
1 changed files with 96 additions and 0 deletions
@ -0,0 +1,96 @@ |
||||
<!DOCTYPE html> |
||||
<html lang="en"> |
||||
<head> |
||||
<meta charset="UTF-8"> |
||||
<title>事件修饰符</title> |
||||
<script type="text/javascript" src="../vue.js"></script> |
||||
<style> |
||||
*{ |
||||
margin-top: 20px; |
||||
} |
||||
.demo1{ |
||||
height: 50px; |
||||
background-color: skyblue; |
||||
} |
||||
.box1{ |
||||
height: 80px; |
||||
background-color: skyblue; |
||||
} |
||||
.box2{ |
||||
width: 60px; |
||||
background-color: orange; |
||||
} |
||||
.box3{ |
||||
height: 80px; |
||||
background-color: blue; |
||||
} |
||||
.list{ |
||||
height: 200px; |
||||
width: 200px; |
||||
background-color: bisque; |
||||
overflow: auto; |
||||
} |
||||
li{ |
||||
height: 100px; |
||||
} |
||||
</style> |
||||
</head> |
||||
<body> |
||||
<div id="root"> |
||||
<!-- 阻止默认操作--> |
||||
<h2>你好 {{name}}!!</h2> |
||||
<a href="https://www.baidu.com" target="_blank" @click.prevent="showView">阻止默认操作</a> |
||||
<!-- 停止冒泡--> |
||||
<div class="demo1" @click="showView"> |
||||
<button @click.stop="showView">停止冒泡</button> |
||||
</div> |
||||
<!-- 事件只触发一次--> |
||||
<button @click.once="showView">事件只触发一次</button> |
||||
<!-- 事件捕获模式--> |
||||
<div class="box1" @click.capture="showMsg(1)"> |
||||
div1 |
||||
<div class="box2" @click="showMsg(2)"> |
||||
div2 |
||||
</div> |
||||
</div> |
||||
<!-- self控制触发事件--> |
||||
<div class="box3" @click.self="showInfo"> |
||||
<button @click="showInfo">self控制触发事件</button> |
||||
</div> |
||||
<!-- passive优先处理时间,不用等待事件绑定功能执行完毕,多用于移动端--> |
||||
<ul @wheel.passive="demo" class="list"> |
||||
<li>1</li> |
||||
<li>2</li> |
||||
<li>3</li> |
||||
<li>4</li> |
||||
</ul> |
||||
|
||||
</div> |
||||
<script> |
||||
new Vue({ |
||||
el: '#root', |
||||
data: { |
||||
name: '哈哈' |
||||
}, |
||||
methods: { |
||||
showView(e){ |
||||
// e.preventDefault() // 禁用默认事件 |
||||
// e.stopPropagation() // 禁用冒泡 |
||||
alert("hahahaha!!!") |
||||
}, |
||||
showMsg(msg){ |
||||
console.log(msg) |
||||
}, |
||||
showInfo(e){ |
||||
console.log(e.target) |
||||
}, |
||||
demo(){ |
||||
for (let i=0; i<=10000; i++) { |
||||
console.log('@') |
||||
} |
||||
} |
||||
} |
||||
}) |
||||
</script> |
||||
</body> |
||||
</html> |
Loading…
Reference in new issue