首頁 >web前端 >js教程 >js中opener與parent的區別詳細解析_javascript技巧

js中opener與parent的區別詳細解析_javascript技巧

WBOY
WBOY原創
2016-05-16 17:04:031211瀏覽

opener也就是誰打開我的,例如A頁面利用window.open彈出了B頁面窗口,那麼A頁面所在窗口就是B頁面的opener,在B頁面透過opener物件可以存取A頁面。

parent表示父窗口,例如一個A頁面利用iframe或frame呼叫B頁面,那麼A頁面所在窗口就是B頁面的parent。在JS中,window.opener只是對彈出視窗的母視窗的一個引用。例如:a.html中,透過點擊按鈕等方式window.open出一個新的視窗b.html。那麼在b.html中,就可以透過window.opener(省略寫為opener)來引用a.html,包含a.html的document等對象,操作a.html的內容。

假如這個引用失敗,那麼將會回傳null。所以在呼叫opener的物件前,要先判斷物件是否為null,否則會出現「物件為空或不存在」的JS錯誤。

範例:
aa.html

複製程式碼


程式碼🎜>




無標題文件






bb.html複製程式碼
程式碼如下:



程式碼如下:



 
 
 
 無標題文件
 
 
  

  
window.opener 返回的是創建當前視窗的那個視窗的引用,例如點擊了aa.htm上的一個連結而打開了bb.htm,然後我們打算在bb.htm上輸入一個值然後賦予aa.htm上的一個id為「name」的textbox中,就可以

寫為:window.opener.document.getElementById("name").value = "輸入的資料";window.opener.document.getElementById( "name").innerHTML= "輸入的資料";
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn