HTMLDialogElementインターフェースは<dialog>要素を操作するメソッドを提供します。HTMLElementインターフェースからプロパティとメソッドを継承しています。
プロパティ
親要素であるHTMLElementからプロパティを継承しています。
| 名前 | 型 | 説明 |
|---|---|---|
open |
Boolean |
ダイアログが相互利用可能であることを示すopen HTML属性を反映させます。 |
returnValue |
DOMString |
ダイアログの戻り値を設定/取得します。 |
メソッド
親要素であるHTMLElementからメソッドを継承しています。
| 名前 & 引数 | 戻り値 | 説明 |
|---|---|---|
close() HTML5 |
void |
ダイアログを閉じます。オプションのDOMString を引数として渡すことができ、ダイアログのreturnValueを更新します。 |
show() HTML5 |
void |
モードレスにダイアログを表示します。この時、ダイアログの外側の要素と相互利用できます 。ダイアログを固定されたアンカーポイントとして指定するために、オプションのElementやMouseEvent を引数として渡すことができます。 |
showModal() HTML5 |
void |
存在するかもしれないそのほかのダイアログ上で、排他的な操作ができるダイアログを表示ます。ダイアログを固定されたアンカーポイントとして指定するために、オプションの ElementやMouseEvent を引数として渡すことができます。 |
例
例 1
<!-- Anchor point example -->
<dialog id="bronteDialog">
<p>That was part of a poem by Emily Brontë!</p>
</dialog>
<blockquote>
<p>"Then art thou glad to seek repose?<br>
Art glad to leave the sea,<br>
And <strong id="anchor">anchor</strong> all thy weary woes<br>
In calm Eternity?"</p>
</blockquote>
<menu>
<button id="showDialogButton">Show dialog</button>
</menu>
<script>
(function() {
var showDialogButton = document.getElementById('showDialogButton');
// 'Show dialog' button opens dialog, anchored at third line of quote
showDialogButton.addEventListener('click', function() {
var bronteDialog = document.getElementById('bronteDialog');
var anchorPoint = document.getElementById('anchor');
bronteDialog.show(anchorPoint);
});
})();
</script>
例 2
<!-- Simple pop-up dialog box, containing a form -->
<dialog id="favDialog">
<form method="dialog">
<section>
<p><label for="favAnimal">Favorite animal:</label>
<select id="favAnimal" name="favAnimal">
<option></option>
<option>Brine shrimp</option>
<option>Red panda</option>
<option>Spider monkey</option>
</select></p>
</section>
<menu>
<button id="cancel" type="reset">Cancel</button>
<button type="submit">Confirm</button>
</menu>
</form>
</dialog>
<menu>
<button id="updateDetails">Update details</button>
</menu>
<script>
(function() {
var updateButton = document.getElementById('updateDetails');
var cancelButton = document.getElementById('cancel');
// Update button opens a modal dialog
updateButton.addEventListener('click', function() {
document.getElementById('favDialog').showModal();
});
// Form cancel button closes the dialog box
cancelButton.addEventListener('click', function() {
document.getElementById('favDialog').close();
});
})();
</script>
仕様
| 仕様 | 状態 | コメント |
|---|---|---|
| HTML Living Standard <dialog> の定義 |
現行の標準 | |
| HTML 5.1 <dialog> の定義 |
勧告 |
ブラウザ実装状況
現在、互換性データを可読形式の JSON フォーマットに置き換えているところです。
この互換性一覧は古い形式を使っており、これに含まれるデータの置き換えが済んでいません。
手助けしていただける場合は、こちらから!
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | 37 | 未サポート バグ 840640 | 未サポート | 24 | 未サポート |
| Anchor points | 未サポート | 未サポート | 未サポート | 未サポート | 未サポート |
| Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|
| Basic support | 未サポート | 未サポート | 未サポート | 未サポート | 未サポート |
| Anchor points | 未サポート | 未サポート | 未サポート | 未サポート | 未サポート |
関連項目
- このインターフェースを実装したHTML要素:
<dialog>.