WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:ModelessDialogを複数開きたくない

0:[投稿] EUR [2006/05/15 13:28 ] [環境:IE6.0SP2,WinXPSP2 サーバーなし(ローカルファイルをブラウズ)]

いつもお世話になっております。

画像をクリックするとModelessDialogを開くようにしているのですが、複数回画像をクリックすると、複数個のダイアログが開いてしまいます。
<img src="hoge.gif" onClick="showModelessDialog('hoge.html', '')">
これを一つしか開かなくする(開いているダイアログを更新するのは問題ありません)ことはできないでしょうか。
ご存知の方は、ご教授お願いいたします。

※ニュアンスとしては、window.openをターゲットつきで開くような感じです。
ModalDialogやwindow.open+onblurでは、作成しようとしている機能を満たせないので、使用したくありません。

以下、試してみてダメだったものです。
■showModelessDialgからのリターンを判定する。
if (!Dialog) {
  Dialog = showModelessDialog('hogehoge', '');
  …
変数Dialogを用意しておき、ダイアログが表示されているときにtrueにしておきます。ダイアログを閉じるときにfalseにおとすのですが、ダイアログを右上の×で閉じられたばあいに、undefinedが入らないようです。


1:[完了] EUR [2006/05/17 11:00 ]

すみません、解決いたしましたので完了とさせていただきます。
ModelessDialogからのリターンにclosedプロパティがあることを知りませんでした。
お恥ずかしい・・・

以下、解決したソースになります。

var Dialog;
if (!Dialog || Dialog.closed) {
  Dialog = showModelessDialog('hogehoge', '');
}

ありがとうございました。

回答(必須): 状態:

お名前(必須):

URL:




[戻る]