在jQuery中focusin/focusout与focus/blur有什么区别

What is the difference between focusin/focusout vs focus/blur in jQuery?

本文关键字:blur 什么 区别 focus focusout jQuery focusin      更新时间:2023-09-26

我正在使用以下代码和jQuery 1.7.2处理一些事件:

$().on('focus blur', function(event) {
  console.log(event.type);
});

我注意到这两个事件的event.type都打印出来:focusinfocusout.

focusin/focusoutfocus/blur有什么区别?

简短的回答:focusin气泡,focus没有。
focusout气泡,blur没有。
阅读文档

当元素或其中的任何元素获得焦点时,会将 focusin 事件发送到该元素。这与焦点事件的不同之处在于,它支持检测父元素上的焦点事件(换句话说,它支持事件冒泡)。

从文档中:

focusin 事件在元素或内部任何元素时被发送到元素 的,获得焦点。这与焦点事件不同,因为它 支持检测父元素上的焦点事件(换句话说, 它支持事件冒泡)。

是的,你也可以在这里找到相同的答案:javascript/jQuery事件"focus"和"focusin"之间的区别?

当元素或其中的任何元素获得焦点时,会将 focusin 事件发送到该元素。这与焦点事件的不同之处在于,它支持检测父元素上的焦点事件(换句话说,它支持事件冒泡)。