unload event


.unload( handler(eventObject) )返回: jQueryversion deprecated: 1.8

描述: 为 JavaScript 的 "unload" 事件绑定一个处理函数。

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

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

    • eventData
      类型: Object
      一个普通对象,它包含的数据键值对映射将被传递给事件处理程序。
    • handler(eventObject)
      类型: Function()
      每次事件触发时会执行的函数。

这个方法是.bind('unload', handler)的简写。

当用户离开这个页面时,就会触发window元素上的unload事件。这意味着很多情况会触发这个事件。用户可以点击一个链接,离开页面,或在地址栏输入一个新的URL。前进和后退按钮会触发该事件。关闭浏览器窗口,将导致该事件被触发。即使重新加载页面首先会创建一个unload事件。

unload事件的处理器在浏览器的各个版本中可能有变化的。例如,Firefox的某些版本中会跟着一个链接触发该事件,但当窗口被关闭时不会触发。在实际使用中,应在所有支持的浏览器中进行测试,和对比的专有beforeunload事件。

任何 unload事件处理程序必须绑定到 window 对象:

1
2
3
$(window).unload(function() {
alert('Handler for .unload() called.');
});

这些代码执行后,浏览器离开当前页面时,将显示警报(alert)。不可能用事件对象的.preventDefault()方法取消unload事件。当用户离开该页面,需要使用脚本进行一些清理工作的场合,可以使用该事件。

例子:

当离开页面时显示一个提示框:

1
$(window).unload( function () { alert("Bye now!"); } );