Document: readystatechange イベント

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

readystatechange event は、文書の readyState 属性が変化したときに発生します。

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

構文

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

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

onreadystatechange = (event) => {};

イベント型

一般的な Event です。

ライブデモ

HTML

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

JavaScript

js
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`;
});

結果

仕様書

Specification
HTML Standard
# event-readystatechange

ブラウザーの互換性

BCD tables only load in the browser

関連情報