JavaScriptのモーダルダイアログは、ブラウザウィンドウ全体ではなく、タブのみに対してモーダルにすることができますか?
-
08-07-2019 - |
質問
最新のブラウザにはマルチタブインターフェイスがありますが、JavaScript関数 window.showModalDialog()
は、タブのすべての をブロックするモーダルダイアログを作成します。
作成されたタブのみをブロックするモーダルダイアログを作成する方法があるかどうか知りたいですか?
解決
より「Ajaxのような」モーダルダイアログの1つを使用できます。モーダルダイアログは、絶対配置されたdivであり、他のすべての上に浮かんでいます。
これらはブラウザではなく「ドキュメント」に対してモーダルです。
たとえば、このjQueryプラグイン
PS showModalDialog()
はIEのみの呼び出しであるため、まったく使用しないことをお勧めします。
他のヒント
いいえ。 IE8の「疎結合」はある時点でこのように動作する可能性がありますが、現在のベータ版では動作しません。
2番目のMichielの推奨。ページの残りの部分を覆い隠し、divを一番上に浮かせ、スクリプトが終了したらスクリプトをコールバックすることで機能する疑似モーダルダイアログは、両方とも
- 実際のモーダルダイアログよりもはるかに使いやすく/煩わしくない
- 任意のブラウザとの互換性
showModalDialog / showModelessDialog自体は一般的に避けるべきです。
Firefox 3はwindow.showModalDialogをサポートしています(ただし、すべてのタブをブロックします)。
所属していません StackOverflow