Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我可以访问子窗口中的变量吗_Javascript_Jquery - Fatal编程技术网

Javascript 我可以访问子窗口中的变量吗

Javascript 我可以访问子窗口中的变量吗,javascript,jquery,Javascript,Jquery,我正在尝试访问已打开窗口中的变量 这是父窗口,它打开一个新窗口,设置对子窗口的引用,然后在另一个onclick事件中尝试检索子窗口中定义的变量 var window1; //open a window $('#btnOpen').click(function () { window1 = window.open('openedwindow', 'window2'); }); //get child variable $('#bt

我正在尝试访问已打开窗口中的变量

这是父窗口,它打开一个新窗口,设置对子窗口的引用,然后在另一个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语法是否正确,目前它只返回未定义的(没有不安全的javascript错误,我尝试在子窗口中获取控件,我可以访问它)。Javascript的第358页权威指南似乎暗示这是可能的。

我错在以下几点,我已经定义了

$(document).ready(function () {
函数和我的变量是在这些函数中定义的。这意味着

var childVariable 
不是在全局范围中定义的,而是在函数的上下文中定义的,因此在函数外部无法访问(我认为是一个闭包)

(它确实有效,但如果我有任何错误,请纠正我)