備忘録的プログラミングリファレンス

showModal() メソッド

HTMLDialogElement.showModal()

 showModal() メソッドは、<dialog> エレメントを表示に切り替えるメソッドです。 <dialog> エレメントの独自メソッドの一つです。詳しくは HTMLDialogElement のメソッド を参照してください。

 <dialog> エレメントを表示するためのメソッドには showModal() と show() メソッドがあります。
 showModal() メソッドは <dialog> エレメント以外を操作できないようにします。ユーザーによる返答がない限りは次に進めないようにしたい場合には showModal() メソッドを使用します。

showModal() メソッド
document.getElementById('dialog_btn').addEventListener('click', function() {
	var elem_ = document.querySelector("dialog#example");
	if ( !elem_.open && elem_.showModal ) {
		elem_.showModal();
	}
});

document.getElementById('close_btn').addEventListener('click', function() {
	var elem_ = document.querySelector("dialog#example");
	if( elem_.open ){
		elem_.close();
	}
});

詳しくは Example を参照してください

 上記の例は <dialog> エレメントを開く機能と閉じる機能を分けて示してあります。
 showModal() メソッドは <dialog> エレメント以外を操作できないようにします。そのために閉じる機能を別で設ける必要があります。
 動きについては Example を参照してください。

 showModal() メソッドによって開いた <dialog> エレメントより下のレイヤーには ::backdrop 疑似エレメントが使用できます。
  <dialog> エレメントより下のレイヤーのスタイルを好みに変えることができます。

ページ内 Index

構文(Syntax)

 showModal() は、ダイアログをユーザーの操作待ちに表示します。ダイアログ以外の操作ができないように表示されます。

HTMLDialogElement.showModal();

引数(Parameter Values)

 showModal() メソッドに引数はないです。

返り値(Return Values)

 showModal() メソッドからの返り値はありません。

Example

 showModal() メソッドの例です。

 showModal() メソッドは、<dialog> エレメントを表示に切り替える機能です。

 以下の例は、ダイアログの表示ボタンをクリックすることで showModal() メソッドによってダイアログが表示されます。showModal() メソッドによって開くと、 <dialog> の内容以外は操作できなくなります。

 showModal() メソッドに反応する ::backdrop 疑似エレメントによって背景が orange 色に表示されます。

 ::backdrop 疑似エレメントについて詳しくは::backdrop エレメントページを参照してください。