JavaScriptのモーダルダイアログは、ブラウザウィンドウ全体ではなく、タブのみに対してモーダルにすることができますか?

StackOverflow https://stackoverflow.com/questions/287242

  •  08-07-2019
  •  | 
  •  

質問

最新のブラウザにはマルチタブインターフェイスがありますが、JavaScript関数 window.showModalDialog()は、タブのすべての をブロックするモーダルダイアログを作成します。

作成されたタブのみをブロックするモーダルダイアログを作成する方法があるかどうか知りたいですか?

役に立ちましたか?

解決

より「Ajaxのような」モーダルダイアログの1つを使用できます。モーダルダイアログは、絶対配置されたdivであり、他のすべての上に浮かんでいます。

これらはブラウザではなく「ドキュメント」に対してモーダルです。

たとえば、このjQueryプラグイン

PS showModalDialog()はIEのみの呼び出しであるため、まったく使用しないことをお勧めします。

他のヒント

いいえ。 IE8の「疎結合」はある時点でこのように動作する可能性がありますが、現在のベータ版では動作しません。

2番目のMichielの推奨。ページの残りの部分を覆い隠し、divを一番上に浮かせ、スクリプトが終了したらスクリプトをコールバックすることで機能する疑似モーダルダイアログは、両方とも

  • 実際のモーダルダイアログよりもはるかに使いやすく/煩わしくない
  • 任意のブラウザとの互換性

showModalDialog / showModelessDialog自体は一般的に避けるべきです。

Firefox 3はwindow.showModalDialogをサポートしています(ただし、すべてのタブをブロックします)。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top