IDBCursor インターフェースの continue() メソッドは、オプションのキーパラメータに一致する方向に沿って、カーソルを次の位置に進めます。キーを指定しない場合、カーソルはその方向に基づき、隣へ進みます。

註: この機能は Web Workers 内で利用可能です。

構文

cursor.continue(optionalKey);

パラメータ

optionalKey
カーソル位置の為のキー。

戻り値

undefined

このメソッドは次の内いずれかの DOMException を発生させることがあります。

例外 解説
TransactionInactiveError この IDBCursor's の処理はアクティブではありません。
DataError

キーパラメータは次のいくつかの状態を持つかもしれません:

  • キーは無効です。
  • キーはカーソルの位置より小さいか等しく、カーソルの方向は次か次のみです。
  • キーはカーソルの位置より大きいか等しく、カーソルの方向は以前か以前のみです。
InvalidStateError カーソルは現状を繰り返しているか、最後を過ぎています。
 

実例

この単純で部分的な実例ではトランザクションを作り、オブジェクトストアを取得した後、オブジェクトストア内の全ての反復処理するためカーソルを使用しています。カーソルはキーに基づいてデータを選択するには必要ありません。その全てを捕らえることができます。また、それぞれのループ内での繰り返しでカーソルオブジェクトを用い、cursor.value.foo とすることで、現在のレコードからカーソルの下のデータを取得できることには注目です。完全な例については IDBCursor の例 (動かせる例を見る) を参照してください。

function displayData() {
  var transaction = db.transaction(['rushAlbumList'], "readonly");
  var objectStore = transaction.objectStore('rushAlbumList');

  objectStore.openCursor().onsuccess = function(event) {
    var cursor = event.target.result;
    if(cursor) {
      var listItem = document.createElement('li');
      listItem.innerHTML = cursor.value.albumTitle + ', ' + cursor.value.year;
      list.appendChild(listItem);  

      cursor.continue();
    } else {
      console.log('Entries all displayed.');
    }
  };
};

仕様

仕様書 策定状況 備考
Indexed Database API
continue() の定義
勧告  
Indexed Database API 2.0
continue() の定義
勧告  

ブラウザの互換性

Update compatibility data on GitHub
デスクトップモバイル
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeEdge MobileAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung Internet
基本対応Chrome 完全対応 24
完全対応 24
未対応 23 — 24
接頭辞付き
接頭辞付き webkit のベンダー接頭辞が必要
Edge 完全対応 12Firefox 完全対応 16
完全対応 16
未対応 10 — 16
接頭辞付き
接頭辞付き moz のベンダー接頭辞が必要
IE 完全対応 10
補足
完全対応 10
補足
補足 partial
Opera 完全対応 15Safari 完全対応 7WebView Android 完全対応 ありChrome Android 完全対応 ありEdge Mobile 完全対応 ありFirefox Android 完全対応 22Opera Android 完全対応 22Safari iOS 完全対応 8Samsung Internet Android 完全対応 あり

凡例

完全対応  
完全対応
実装ノートを参照してください。
実装ノートを参照してください。
使用するには、ベンダー接頭辞または異なる名前が必要です。
使用するには、ベンダー接頭辞または異なる名前が必要です。

参照

ドキュメントのタグと貢献者

このページの貢献者: silverskyvicto, Tanooky
最終更新者: silverskyvicto,