EventTarget事件:unload

2019-01-27 15:52 更新

EventTarget事件 - 卸載

卸載文檔或子資源時會觸發(fā)該卸載事件。

它在以下情況下被觸發(fā):

  • beforeunload(可取消的事件)
  • pagehide

該文件處于特定狀態(tài):

  • 所有資源仍然存在(IMG,IFRAME等)
  • 最終用戶再也看不到任何東西了
  • UI交互是無效的(window.open,警報,確認等)
  • 錯誤不會停止卸載工作流程

請注意,卸載事件也在文檔樹之后:父框架卸載將在子框架卸載之前發(fā)生(參見下面的示例)。

是否冒泡沒有
是否可取消沒有
目標對象DefaultViewDocument,Element
接口如果從用戶界面生成則為UIEvent,否則為Event
默認操作沒有

屬性

屬性類型描述
target(只讀)EventTarget事件目標(DOM樹中最頂層的目標)。
type(只讀)DOMString事件的類型。
bubbles(只讀)boolean事件是否正常冒泡。
cancelable(只讀)boolean該事件是否可取消。
view(只讀)WindowProxydocument.defaultViewwindow文件)
detail(只讀)longfloat0。

示例

<!DOCTYPE html>
<html>
  <head>
    <title>Parent Frame</title>
    <script>
      window.addEventListener('beforeunload', function(event) {
        console.log('I am the 1st one.');
      });
      window.addEventListener('unload', function(event) {
        console.log('I am the 3rd one.');
      });
    </script>
  </head>
  <body>
    <iframe src="child-frame.html"></iframe>
  </body>
</html>

下面,內(nèi)容兒童frame.html:

<!DOCTYPE html>
<html>
  <head>
    <title>Child Frame</title>
    <script>
      window.addEventListener('beforeunload', function(event) {
        console.log('I am the 2nd one.');
      });
      window.addEventListener('unload', function(event) {
        console.log('I am the 4th and last one…');
      });
    </script>
  </head>
  <body>
      ?
  </body>
</html>

卸載父框架時,將按執(zhí)行console.log消息描述的順序觸發(fā)事件。

規(guī)范

規(guī)范狀態(tài)注釋
UI事件
該規(guī)范中“卸載”的定義。
工作草案
 
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號