2013-04-10 13 views
0

我試圖訪問我打開的窗口中的變量。我可以訪問子窗口中的變量

這裏是父窗口,它開闢了一個新的窗口,設置爲子窗口的引用,然後在另一個onclick事件它試圖找回在子窗口中定義的變量。

var window1; 

    //open a window 
    $('#btnOpen').click(function() { 
     window1 = window.open('openedwindow', 'window2'); 
    }); 

    //get child variable 
    $('#btnGetChildVariable').click(function() { 
     alert(window1.childVariable); 
    }); 

這裏是在子窗口

var childVariable = 'My child'; 

代碼這可能嗎?是window1.childVariable正確的語法,目前它只是返回undefined(沒有不安全的JavaScript錯誤,我已經嘗試過讓在子窗口控制,我可以訪問它)。 Javascript的權威指南似乎表明這是可能的。

回答

0

我哪裏出了問題是下面,我已經定義

$(document).ready(function() { 

功能和我的變量這些函數中定義。這意味着

var childVariable 

沒有在全局範圍內定義,但在函數的上下文中定義,因此在它之外無法訪問(我相信一個閉包)。

(它確實有效,但請糾正我,如果我有這個錯誤)

相關問題