如何访问使用jQuery的父窗口对象?

如何使用jQuery获取父窗口对象?

这是我的父窗口variables,我想在closures子窗口后设置它的值。

$('#serverMsg').html('some text here'); 
 window.opener.$("#serverMsg") 

如果您正处于打开状态,并且想要访问打开的窗口 ,请使用window.opener 。 最简单的是,如果你可以在父窗口中加载JQuery:

window.opener.$("#serverMsg").html //在父窗口中使用JQuery

或者你可以使用普通的旧的document.getElementById来获取元素,然后在你的子窗口中使用jQuery来扩展它。 以下应该工作(虽然我还没有testing过):

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

如果您处于iframe或frameset中,并且要访问父框架,请使用window.parent而不是window.opener

根据同源策略,只有当子窗口和父窗口在同一个域中时,所有这些才能毫不费力地工作。

或者你可以使用另一种方法:

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

假设iframe中的域名与父窗口中的域名相匹配,则可以在iframe中使用原始问题,这是一个更为直接的回答(父窗口而不是开启者):

 window.parent.$("#serverMsg")