JS設定タイマーリフレッシュ画面
1188 ワード
新しいウィンドウにリンクします.この新しいウィンドウで対応する操作を実行した後、新しいウィンドウを閉じて、最初のインターフェースを更新したいです.
上の問題を解決するためのタイマーを設定できます.
set Timeoutとset Intervalの違い:setTimeoutとset Intervalの文法は同じです.二つのパラメータがあります.一つは実行するコード文字列です.もう一つはミリ秒単位の時間間隔です.その時間帯が過ぎるとそのコードが実行されます.しかし、この二つの関数には違いがあります.setIntervalは一回のコードを実行した後、その固定された時間間隔を経て、自動的にコードを繰り返し実行します.setTimeoutは一回のコードしか実行しません.
上の問題を解決するためのタイマーを設定できます.
var newWin;
var timer;
function subWinClose() {
if (newWin.closed == true) {
alert(' ');
window.clearInterval(timer);
}
}
function open_win() {
newWin = window.open('http://www.111.com');
timer = window.setInterval("subWinClose()", 500);
}
複数の新しいインターフェースを開くと、その中の一つの新しいインターフェースが閉じられ、最初のインターフェースは常に更新されます.上の原因はグローバル変数の問題で、timerは新しいインターフェースに覆われてしまうので、コードを書き換える必要があります.function open_win() {
var newWin = window.open('http://www.111.com');
var timer = window.setInterval(function(){
if (newWin.closed == true) {
alert(' ');
window.clearInterval(timer);
}
}, 500);
}
知識ポイント追加:set Timeoutとset Intervalの違い:setTimeoutとset Intervalの文法は同じです.二つのパラメータがあります.一つは実行するコード文字列です.もう一つはミリ秒単位の時間間隔です.その時間帯が過ぎるとそのコードが実行されます.しかし、この二つの関数には違いがあります.setIntervalは一回のコードを実行した後、その固定された時間間隔を経て、自動的にコードを繰り返し実行します.setTimeoutは一回のコードしか実行しません.
function closeWin(){
alert(' ');
setTimeout('closeWin()',1000);
}