HTMLDialogElement: cancel イベント
cancel
イベントは、ユーザーが現在開いているダイアログを閉じるようブラウザーに指示したときに <dialog>
に発生します。ブラウザーはユーザーが Esc キーを押した時にこのイベントを発生させます。
このイベントはバブリングしません。
<dialog>
を Esc キーで閉じると、cancel
イベントと close
イベントの両方が発行されます。
構文
このイベント名を addEventListener()
などのメソッドで使用したり、イベントハンドラープロパティを設定したりします。
addEventListener("cancel", (event) => {});
oncancel = (event) => {};
イベント型
一般的な Event
です。
例
ライブ例
HTML
<dialog class="example-dialog">
<button class="close" type="reset">Close</button>
</dialog>
<button class="open-dialog">Open dialog</button>
<div class="result"></div>
JavaScript
const result = document.querySelector(".result");
const dialog = document.querySelector(".example-dialog");
dialog.addEventListener("cancel", (event) => {
result.textContent = "dialog was canceled";
});
const openDialog = document.querySelector(".open-dialog");
openDialog.addEventListener("click", () => {
if (typeof dialog.showModal === "function") {
dialog.showModal();
result.textContent = "";
} else {
result.textContent = "The dialog API is not supported by this browser";
}
});
const closeButton = document.querySelector(".close");
closeButton.addEventListener("click", () => {
dialog.close();
});
結果
仕様書
Specification |
---|
HTML Standard # event-cancel |
HTML Standard # handler-oncancel |
ブラウザーの互換性
BCD tables only load in the browser