2010-01-30 65 views

回答

72
window.opener.$("#serverMsg") 
+0

僅當JQuery在啓動器中處於活動狀態時纔有效,我認爲。 –

+1

是的,當然... – roman

+0

完美,謝謝! –

16

如果你是一個寶了,你要訪問的打開的窗口中,使用window.opener。 最簡單的是,如果你能在父窗口中加載的JQuery還有:

window.opener.$("#serverMsg").html //這個用了jQuery的父窗口

或者你可以使用普通的舊document.getElementById來獲取元素,然後再擴展它在你的子窗口中使用jquery。下面應該工作(我沒有測試過,雖然):

element = window.opener.document.getElementById("serverMsg"); 
element = $(element); 

如果你在一個iframe或框架,並希望訪問父框架,使用window.parent代替window.opener

根據同源策略,只有當子窗口和父窗口都在同一個域中時,所有這些才能毫不費力地工作。

7

或者您可以使用另一種方法:

$("#serverMsg", window.opener.document) 
+0

我更喜歡這種方法,因爲它不依賴於具有jQuery的開放窗口 - 儘管它可能會有jQuery。 –

0

這裏是一個更字面解釋(而不是開罐器父窗口),可以在iframe中使用的原題,假設域iframe中的名稱與父窗口中的名稱匹配:

window.parent.$("#serverMsg")