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


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


用法
.error( handler ) => jQuery

版本已弃用:1.8,已删除:3.0

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

  • 添加的版本:1.0.error( handler )

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

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

注意:这个 API 在 jQuery 3.0 中已经被移除;请使用 .on( "error", handler ) 而不是 .error( handler ).trigger( "error" ) 而不是 .error()

error 事件被发送到由文档引用并由浏览器加载的元素,例如图像。如果元素未正确加载,则调用它。

例如,考虑一个带有简单图像元素的页面:

<img alt="Book" id="book">

事件处理程序可以绑定到图像:

$( "#book" )
  .error(function() {
    alert( "Handler for .error() called." )
  })
  .attr( "src", "missing.png" );

如果无法加载图像(例如,因为它不在提供的 URL 中),则会显示警报:

.error() 的处理程序被调用。

在浏览器触发 error 事件之前附加事件处理程序 must,这就是示例在附加处理程序后设置 src 属性的原因。此外,当页面在本地提供时,error 事件可能不会正确触发; error 依赖于 HTTP 状态码,如果 URL 使用 file: 协议,一般不会触发。

注意:不应将 jQuery error 事件处理程序附加到 window 对象。发生脚本错误时,浏览器会触发 windowerror 事件。但是,窗口error 事件接收不同的参数并且具有与传统事件处理程序不同的返回值要求。请改用window.onerror

其他注意事项:

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

例子:

要将所有丢失的图像替换为另一个,您可以更新传递给 .error() 的回调中的 src 属性。确保替换图像存在;否则 error 事件将被无限期触发。

// If missing.png is missing, it is replaced by replacement.png
$( "img" )
  .error(function() {
    $( this ).attr( "src", "replacement.png" );
  })
  .attr( "src", "missing.png" );

相关用法


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