開いたウィンドウを閉じる方法: 1. "window.close" を使用して新しいウィンドウを閉じる; 2. "window.location" を使用してリダイレクト; 3. "window.blur" および "window.close" を使用する。 focus" ; 4. ロールバックするには、"window.history" を使用します。 5. "window.opener" を使用します。
window.open は、新しいウィンドウまたはタブを開く JavaScript の関数です。ただし、ブラウザのセキュリティ制限のため、新しいウィンドウやタブから元のウィンドウやタブに直接戻ったり、新しいウィンドウやタブを直接閉じることはできません。これは、悪意のあるスクリプトがユーザーの知らないうちにウィンドウやタブを閉じることを防ぐためです。
ただし、新しいウィンドウやタブを間接的に閉じる方法があります。考えられる方法はいくつかあります:
1. window.close を使用して新しいウィンドウを閉じます
window.open で開いた新しいウィンドウを直接閉じることはできませんが、新しいウィンドウで window.close 関数を呼び出してウィンドウを閉じることができます。例:
window.open('https://www.example.com', '_blank'); // 在新窗口中... window.close();
window.open で開かれたウィンドウのみを閉じることができることに注意してください。ブラウザでは通常、スクリプトによって開かれていないウィンドウをスクリプトが閉じることは許可されません。さらに、スクリプトがウィンドウのサンドボックス環境内で実行されるか、ウィンドウが window.open 経由で開かれない限り、ブラウザーはスクリプトが window.close を含むウィンドウを閉じることを妨げる場合があります。
2. window.location リダイレクトを使用する
新しいウィンドウのアドレス バーに新しい URL を入力することで、新しいページにリダイレクトできます。新しい窓。例:
window.open('https://www.example.com', '_blank'); // 在新窗口中... window.location = 'https://www.example2.com';
この例では、新しいウィンドウは新しい URL にリダイレクトされ、それによって間接的に元のウィンドウが閉じられます。この方法では、ブラウザのフォーカスが変更されるため、ユーザーにとって不快なエクスペリエンスが生じる可能性があることに注意してください。
3. window.blur と window.focus の使用
新しいウィンドウのフォーカスを失ってからフォーカスを取り戻すと、ウィンドウが閉じる可能性があります。例:
window.open('https://www.example.com', '_blank'); // 在新窗口中... window.blur(); // 失去焦点 setTimeout(function() { window.focus(); // 重新获得焦点 }, 0);
ブラウザの実装はさまざまであるため、このアプローチは常に機能するとは限りません。さらに、このアプローチではブラウザーのフォーカスが変更されるため、ユーザーにとって不快なエクスペリエンスが生じる可能性があります。
4. window.history を使用して戻る
window.history オブジェクトの back() メソッドを使用して、前の履歴に戻ることができます。エントリ。これにより、新しいウィンドウまたはタブが閉じられる場合があります。例:
window.open('https://www.example.com', '_blank'); // 在新窗口中... window.history.back();
この方法ではブラウザの履歴が変更されるため、ユーザーに不快なエクスペリエンスをもたらす可能性があることに注意してください。さらに、ブラウザの実装は異なる場合があるため、このアプローチは常に機能するとは限りません。
5. window.opener を使用する
新しいウィンドウで開いた場合は、window.opener プロパティを使用して元のウィンドウにアクセスできます。その後、元のウィンドウで window.close() を呼び出して、新しいウィンドウを閉じることができます。例:
元のウィンドウの場合:
var newWindow = window.open('https://www.example.com', '_blank'); // 在新窗口中... newWindow.close(); // 关闭新窗口
この方法では、ユーザーが新しいウィンドウを手動で閉じる必要があるため、ユーザーのエクスペリエンスが悪化する可能性があることに注意してください。さらに、ブラウザのセキュリティ制限により、この方法が常に機能するとは限りません。
以上がwindow.open開いているウィンドウを閉じる方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。