javascript で現在のウィンドウ(そのjavascriptが動いているウィンドウ)がアクティブ(最前面)にあるかどうかを調べる方法を教えてください。



こちらで質問したのですが、解決していませんでした。再度質問します。

http://q.hatena.ne.jp/1147325109

onfocus, onblur イベントを使った場合、ブラウザのアドレスバーをクリックしたときなどはウィンドウが最前面(フォアグラウンド)に残っているにも関わらず、blur されたと判断してしまうようです。


回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2006/05/12 10:56:00
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

id:llusall No.1

回答回数505ベストアンサー獲得回数61

ポイント60pt

これでどうでしょう??

<html>

<body>

<input type="text" name="txtStatus">

</body>

</html>

<script language='JavaScript'> 

<!-- 

function winEvent1(theEvent){ 

    document.all.txtStatus.value = "アクティブ";

function winEvent2(theEvent){ 

    document.all.txtStatus.value = "アクティブでない";

window.onfocus = winEvent1; 

window.onblur  = winEvent2; 

//--> 

</script> 

id:yoski

ありがとうございます。

うーん、body.onfocus と同じ動きで、やっぱりウィンドウがアクティブでもアドレスバーなどをクリックすると onblur が呼ばれてしまいます。。。。

難しいようですね。ありがとうございました。

2006/05/12 10:55:43
  • id:llusall
    お役にたてず、すみません。
    「アドレスバー」ですね。「タイトルバー」と勘違いしてました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません