关于focus和blur事件的传递性

关于focus和blur事件的传递性

focus和blur事件是否都无法传递,即没有冒泡也没有捕获,没有办法委托?

除了这两个之外,是否还有其他的事件无法传递?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

5回答
好帮手慕言 2019-08-23 20:01:14

同学你好,这样理解是正确的,棒棒哒,继续加油。

如果帮助到了你,欢迎采纳~祝学习愉快~

好帮手慕言 2019-08-21 10:08:19

同学你好,在捕获阶段也是可以做事件委托的,

例子:

http://img1.sycdn.imooc.com//climg/5d5ca70e0001d13007440472.jpg

页面效果:

http://img1.sycdn.imooc.com//climg/5d5ca7220001469a02560360.jpg

但是大家一般是利用事件冒泡做事件委托比较多,代码具有灵活性,只要实现效果就可以了

如果帮助到了你,欢迎采纳~祝学习愉快~

  • 提问者 慕仔2276916 #1
    老师你看这么讲是不是对的:focus和blur这一类事件,并不是不能传播,而是无法冒泡,只有捕获的方式才可以。所以这一类事件不能进行冒泡的事件委托,但是可以进行捕获的事件委托
    2019-08-23 13:57:22
好帮手慕言 2019-08-15 19:36:36

同学你好,可能老师第一次回答不够详细。所有的事件都是会发生捕获元素的过程,当事件触发之后,会从上到下去捕获(html->body..一直到触发事件的元素),所以在同学的例子中,可以在捕获阶段触发div元素获得焦点的事件。像focus这类事件不能冒泡,所以没有办法做事件委托(事件委托的原理就是利用的事件冒泡)

如果帮助到了你,欢迎采纳~祝学习愉快~

  • 提问者 慕仔2276916 #1
    老师,难道用事件捕获的原理就没法做事件委托了嘛?不是吧,捕获和冒泡都可以用来做事件委托不是吗
    2019-08-21 09:28:07
提问者 慕仔2276916 2019-08-15 16:15:47

http://img1.sycdn.imooc.com//climg/5d55149d00011a0d13320692.jpg

那老师为什么我的这段代码可以捕获focus事件?

好帮手慕言 2019-08-14 18:35:28

同学你好,同学理解的是正确的。

在我们常用的事件里,还有mouseleave和mouseenter事件无法传递。

如果帮助到了你,欢迎采纳~祝学习愉快~


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师