当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JQuery .focusout()用法及代码示例


用法
.focusout( handler ) => jQuery

说明:将事件处理程序绑定到 "focusout" JavaScript 事件。

  • 添加的版本:1.4.focusout( handler )

    • handler
      类型:Function(Event eventObject)
      每次触发事件时执行的函数。
  • 添加的版本:1.4.3.focusout( [eventData ], handler )

    • eventData
      类型:Anything
      包含将传递给事件处理程序的数据的对象。
    • handler
      类型:Function(Event eventObject)
      每次触发事件时执行的函数。
  • 添加的版本:1.0.focusout()

    • 此签名不接受任何参数。

此方法是传递参数时.on( "focusout", handler ) 和不传递参数时.trigger( "focusout" ) 的快捷方式。

focusout 事件会在元素或其中的任何元素失去焦点时发送到该元素。这与 blur 事件的不同之处在于它支持检测对后代元素失去焦点(换句话说,它支持事件冒泡)。

此事件可能会与focusin 事件一起使用。

其他注意事项:

  • 由于 .focusout() 方法只是 .on( "focusout", handler ) 的简写,因此可以使用 .off( "focusout" ) 进行分离。

例子:

注意段落内部发生的焦点丢失,并注意 focusout 计数和 blur 计数之间的差异。 (blur 计数不会改变,因为这些事件不会冒泡。)

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>focusout demo</title>
  <style>
  .inputs {
    float: left;
    margin-right: 1em;
  }
  .inputs p {
    margin-top: 0;
  }
  </style>
  <script src="https://code.jquery.com/jquery-3.5.0.js"></script>
</head>
<body>
 
<div class="inputs">
  <p>
    <input type="text"><br>
    <input type="text">
  </p>
  <p>
    <input type="password">
  </p>
</div>
<div id="focus-count">focusout fire</div>
<div id="blur-count">blur fire</div>
 
<script>
var focus = 0,
  blur = 0;
$( "p" )
  .focusout(function() {
    focus++;
    $( "#focus-count" ).text( "focusout fired: " + focus + "x" );
  })
  .blur(function() {
    blur++;
    $( "#blur-count" ).text( "blur fired: " + blur + "x" );
  });
</script>
 
</body>
</html>

演示:

相关用法


注:本文由纯净天空筛选整理自jquery.com大神的英文原创作品 .focusout()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。