返回值:jQueryunload(handler(eventObject))
为 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
对象上:
$(window).unload(function() { alert('Handler for .unload() called.'); });
在上述代码执行之后,当离开页面时,就会显示一个提示框。无法通过 .preventDefault()
来取消 unload
事件。当用户离开页面时,需要使用脚本进行一些清理工作的场合,可以使用该事件。
示例:
当离开页面时显示一个提示框:
jQuery 代码:
$(window).unload( function () { alert("Bye now!"); } );