java监听器的修饰符_vue(一)--监听事件

1.vue-on:监听事件:

demo:点击按钮,number+1

v-on 还可以缩写为 @

c119c7b7756efd4ab9f041a35ab65bc9.png

49fc76e485802d203cd5d7b7d9c4eec3.png

2.事件修饰符

.stop:等同于JavaScript中的event.stopPropagation(),阻止冒泡(通俗讲就是阻止事件向上级DOM元素传递)

.prevent:等同于JavaScript中的event.preventDefault(), 默认事件指对DOM的操作会引起自动执行的动作,比如点击超链接的时候会进行页面的跳转,点击表单提交按钮时会重新加载页面等,使用".prevent"修饰符可以阻止这些事件的发生。

.capture:与事件冒泡的方向相反,事件捕获由外到内

.self:只会触发自己范围内的事件,不包含子元素

.once:只会触发一次

事件冒泡?

即是:父元素里有 子元素, 如果点击了 子元素, 那么click 事件不仅会发生在子元素上,也会发生在其父元素上,依次不停地向父元素冒泡,直到document元素。

06f82747de304f8d90160bfc39483719.png

使用事件修饰符解决冒泡:

1.   .stop阻止冒泡(通俗讲就是阻止事件向上级DOM元素传递)

在me上的click后面加一个 .stop, 那么冒泡到了这里就结束了,就不会冒到father上面去了。

72e9eb973457bef3ca3a8b0baaf35b2a.png

2.   .prevent  阻止页面刷新

只有超链和form这种会导致页面刷新的操作,.prevent 才有用。 普通的不导致页面刷新的按钮,加上这个没有任何变化。

demo:点击超链接和form不跳转网页:

d1bfb8827ad30c6edee48671f144d98f.png

3.    优先触发 .capture

在father 上增加一个.capture      

那么当冒泡发生的时候,就会优先让father捕捉事件。点击son或者me的时候,都会优先触发它,当点击grandfather时并不会被father捕捉,只会弹出grandfather

ce1943c4ba08879990969c9078474ec0.png

4.   .self

这样点击son 和 me都不会导致其触发click事件,只有点击father自己,才会导致事件发生。

点击son:  son---->me-->grandfather

点击me:   me---->grandfather

点击father : father---》grandfather

acdd1642eea7aea977255096150c2cfc.png

5.      .once

这样father点击一次之后,就不会再监听到click了

点击son:  son---me--father--grandfather

点击me:   me--grandfather

点击father: grandfather

点击grandfather:grandfather

0e502c34984ed9218ef7268aef42a4ca.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值