从父窗口关闭子窗口

我无法弄清楚为什么这不起作用。 这段代码有问题吗? 正在调用该函数我通过警报检查但它不会关闭窗口。

$('#click').click(function() { var win = window.open("test3.html","something","width=550,height=170"); }); function closeit(){ win.close(); } 

并在test3.html上

  window.opener.closeit(); 

您的win变量的作用域是处理click事件的函数。 将它放在该函数和closeit共享的范围内。

在这种情况下,这可能看起来像:

 var win; … $('#click').click(function() { win = window.open("test3.html", "something", "width=550,height=170"); }); }); function closeit() { win.close(); } 

第一个win是回调范围中的局部变量,而第二个win是全局对象。 将定义( var win )移动到函数外部,它应该工作。