ホームページ >ウェブフロントエンド >jsチュートリアル >JSの親ウィンドウが閉じているときに子ウィンドウを閉じるための完璧なソリューション_javascriptスキル
最近、権限管理システムに出会いました。権限管理システムは元のシステム スタイルと矛盾しているため、新しいウィンドウが開きます。管理者がログアウトした後、権限管理ウィンドウが閉じられないという問題が発生します。他の一般ユーザーはログイン後も権限管理画面を操作できます。
単純化された問題: 管理者がログアウトするか、main.html が閉じられると、開いたすべての新しいウィンドウが一緒に閉じられます。問題は解決しました
コードを見てください:
<script> <br>// 開いているすべての子ウィンドウを記録します<br>var win_Array = new Array ); <br>var win_num = -1; <br><br>//新しいウィンドウが開かれるたびに記録します <br>function openNew(uri,param){ <br>win_num = win_num 1; [ win_num] = window.open(uri); <br>} <br><br>//ユーザーがログアウトすると、shutdown メソッドが実行されます。本体は onUnload = "closeNews();" を追加します。メイン ウィンドウが閉じられると、すべての子ウィンドウが閉じられます。 <br>function closeNews(){ <br>//権限管理を閉じる <br>if(win_Array.length > 0) { <br>for(var i = 0;i var win_one = win_Array[i]; <br>if(win_one != unknown){ <br>win_one.close ( ); <br>} <br>} <br>} <br>} <br><br>function logOut(){ <br>//子ウィンドウを閉じる <br>closeNews(); 🎜> //ログアウト<br>} <br><br></script>
説明: