Skip to content

Latest commit

 

History

History
124 lines (89 loc) · 2.5 KB

File metadata and controls

124 lines (89 loc) · 2.5 KB
title short-title slug l10n
Document: readystatechange イベント
readystatechange
Web/API/Document/readystatechange_event
sourceCommit
41a8b9c9832359d445d136b6d7a8a28737badc6b

{{APIRef}}

readystatechange event は、文書の {{domxref("Document.readyState", "readyState")}} 属性が変化したときに発生します。

このイベントはキャンセル不可で、バブリングしません。

構文

このイベント名を {{domxref("EventTarget.addEventListener", "addEventListener()")}} などのメソッドで使用するか、イベントハンドラーのプロパティを設定するかしてください。

addEventListener("readystatechange", (event) => {});

onreadystatechange = (event) => {};

イベント型

一般的な {{domxref("Event")}} です。

ライブデモ

HTML

<div class="controls">
  <button id="reload" type="button">再読み込み</button>
</div>

<div class="event-log">
  <label for="eventLog">イベントログ:</label>
  <textarea
    readonly
    class="event-log-contents"
    rows="8"
    cols="30"
    id="eventLog"></textarea>
</div>

CSS

body {
  display: grid;
  grid-template-areas: "control log";
}

.controls {
  grid-area: control;
  display: flex;
  align-items: center;
  justify-content: center;
}

.event-log {
  grid-area: log;
}

.event-log-contents {
  resize: none;
}

label,
button {
  display: block;
}

#reload {
  height: 2rem;
}

JavaScript

const log = document.querySelector(".event-log-contents");
const reload = document.querySelector("#reload");

reload.addEventListener("click", () => {
  log.textContent = "";
  setTimeout(() => {
    window.location.reload(true);
  }, 200);
});

window.addEventListener("load", (event) => {
  log.textContent = `${log.textContent}load\n`;
});

document.addEventListener("readystatechange", (event) => {
  log.textContent = `${log.textContent}readystate: ${document.readyState}\n`;
});

document.addEventListener("DOMContentLoaded", (event) => {
  log.textContent = `${log.textContent}DOMContentLoaded\n`;
});

結果

{{ EmbedLiveSample('ライブデモ', '100%', '160px') }}

仕様書

{{Specifications}}

ブラウザーの互換性

{{Compat}}

関連情報