2

ポップアップ(子)ウィンドウで他のページ(Google)を返すコードがあります。子ウィンドウにコードを記述できないため、親からすべてを行う必要があります。親ウィンドウから子ウィンドウに onblur イベントをバインドして、子ウィンドウがフォーカスを失ったら閉じられるようにしようとしています。ただし、子ウィンドウはマイクロ秒間スプラッシュし、自動的に閉じます。

作業している環境で jQuery を使用できません。

ここに私のサンプルコードがあります:

<html>
<head>
</head>

<body>
<input type="button" value="Open Google" onclick="OpenWindow()" />

<script type="text/javascript">

function OpenWindow()
{
    var url="http://www.google.com";

    var newWin=window.open(url, 'Popup','height=500,width=600,left=100,top=100,resizable=yes,scrollbars=no,toolbar=no,status=no');
    newWin.focus();
    newWin.onblur =  newWin.close();    
}
</script>

</body>
</html>
4

4 に答える 4

6

後ろの括弧をスキップするだけです.close()

newWin.onblur = newWin.close;

関数参照を渡したいのですが、実行によって返される値を割り当てたくありません.close()

于 2012-07-27T12:04:52.190 に答える
1

別の答えは次のようになります。

function open_popup() {
                var my_window = window.open("", 'targetWindow', 'toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,width=750px,height=500px');
                var html = '';
                html = "Muhammad Shoaib Qureshi's New Window Text";
                my_window.document.write(html);
                my_window.focus();
                my_window.onblur = function() {
                    my_window.close();
                };
            }

上記以外の解決策はありませんでした。

よろしく、ショアイブ。

于 2013-11-02T07:33:14.277 に答える
0

私は解決策を得ました。

「window.top.close();」を使用

于 2012-08-08T17:00:55.950 に答える