1

これは私の Html です。Pag​​e1.html をクリックすると、新しいウィンドウで (同じページ)Page1.html を開く必要があります。(最初のウィンドウ) だから、これを操作するために使用window.open()しました。最初のウィンドウから作成された 2 番目のウィンドウから同じページ (Page1.html) を開きます。そこでwindow.open()、同じウィンドウに Page1.html をロードすることを使用しました。他の新しいウィンドウは作成されません。実際のシナリオでは、A.html から B.html で新しいウィンドウを作成する必要があります。また、2 番目のウィンドウ (B.html) から、C.html で別のウィンドウを作成する必要があります。現在、B は開きますが、C は新しいウィンドウを作成しません。B.html を置き換える 2 番目のウィンドウに C.html をロードするだけです。

  <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
    </head>
    <body>
        <script type="text/javascript">
            function ShowPage(pageName) {
                window.open(pageName, null, 'height=400,width=800,status=yes,toolbar=yes,menubar=no,location=no,scrollbars=yes,resizable=yes');
            }
        </script>
        <a id="page1.htm" onclick="ShowPage(this.id);">Click Me</a>
    </body>
    </html>
4

2 に答える 2

4

「名前付き」ウィンドウがすでに開いてwindow.openいると、同じ名前を使用すると同じウィンドウのコンテンツが開くため、開くすべてのウィンドウに新しい名前を付けます。

また

"_blank"毎回新しいウィンドウを開くように名前を設定します。

ウィンドウの名前は、(nullの代わりに)2番目のパラメーターを使用して設定できます。


このMDNの記事によると

strWindowNameという名前のウィンドウがすでに存在する場合、strUrlは既存のウィンドウにロードされます。この場合、メソッドの戻り値は既存のウィンドウであり、strWindowFeaturesは無視されます。strUrlに空の文字列を指定すると、ウィンドウの場所を変更せずに、開いているウィンドウへの参照をその名前で取得できます。window.open()を呼び出すたびに新しいウィンドウを開くには、strWindowNameに特別な値_blankを使用します。

于 2012-04-04T05:56:58.540 に答える
1

window.open()の2番目の引数でnullの代わりに'_blank'を使用してみてください

于 2012-04-04T05:59:10.710 に答える