DOM

インターフェイス

IDBVersionChangeEvent インターフェイス

  編集:2022.04.07 by T.A.

MS(en-US)

IndexedDB API の IDBVersionChangeEvent インターフェイスは、データベースのバージョンが変更されたことを示します、onupgradeneeded イベントハンドラー関数の結果として。

注: この機能は Webワーカー で使用できます

コンストラクター
new IDBVersionChangeEvent()
データベースのバージョンが変更されたことを表すために使用される新しい IDBVersionChangeEvent オブジェクトを作成して返します。
プロパティ

また、親である Event インターフェイスからプロパティを継承します。

IDBVersionChangeEvent.oldVersion 読取専用
データベースの古いバージョンを返します。
IDBVersionChangeEvent.newVersion 読取専用
データベースの新しいバージョンを返します。
非推奨のプロパティ
IDBVersionChangeEvent.version 読取専用 廃止
versionchange トランザクションでのデータベースの新しいバージョン。

警告: このプロパティはまだ古いブラウザに実装されていますが、最新の仕様では、oldVersion属性とnewVersion属性に置き換えられています。互換性の表を参照して、どのブラウザーがそれらをサポートしているかを確認してください。

メソッド

特定のメソッドはありませんが、親である Event インターフェイスからプロパティを継承します。

次のコードスニペットでは、データベースを開くように要求し、成功とエラーの場合のハンドラーを含めます。バージョン変更時(upgradeneededイベント後)、成功イベントは IDBVersionChangeEvent インターフェイスを実装します。完全に機能する例については、To-Do通知アプリを参照してください(例をライブで表示)。
var note = document.querySelector("ul");

// In the following line, you should include the prefixes of implementations you want to test.
window.indexedDB = window.indexedDB || window.mozIndexedDB || window.webkitIndexedDB || window.msIndexedDB;
// DON'T use "var indexedDB = ..." if you're not in a function.
// Moreover, you may need references to some window.IDB* objects:
window.IDBTransaction = window.IDBTransaction || window.webkitIDBTransaction || window.msIDBTransaction;
window.IDBKeyRange = window.IDBKeyRange || window.webkitIDBKeyRange || window.msIDBKeyRange;
// (Mozilla has never prefixed these objects, so we don't need window.mozIDB*)

// Let us open version 4 of our database
var DBOpenRequest = window.indexedDB.open("toDoList", 4);

// these two event handlers act on the database being opened successfully, or not
DBOpenRequest.onerror = function(event) {
  note.innerHTML += '<li>Error loading database.</li>';
};

DBOpenRequest.onsuccess = function(event) {
  note.innerHTML += '<li>Database initialized.</li>';

  // store the result of opening the database in the db variable. This is used a lot later on, for opening transactions and suchlike.
  db = DBOpenRequest.result;
};

テスト
HTML:

ここに表示
スクリプト組み込み:



スクリプト:


スクリプト:



表示内容:
表示内容: