IDBCursor.continue()

La méthode continue() de l'interface IDBCursor fait avancer le curseur jusqu'à la prochaine position qui corrrespond à une clé donnée si celle-ci est passée en paramètre, si aucune clé n'est indiquée, le curseur avancera à la position qui suit immédiatement la position actuelle (dans la direction de progression du curseur).

Note : This feature is available in Web Workers.

Syntaxe

curseur.continue(cléOptionnelle);

Paramètres

cléOptionnelle
La clé sur laquelle se positionne le curseur.

Exceptions

Cette méthode peut déclencher des exceptions  DOMException de type :

Exception Description
TransactionInactiveError La transaction de l'IDBCursor est inactive.
DataError

Le paramètre cléOptionnelle peut:

  • Être invalide.
  • Être inférieur ou égal à la position de ce curseur et la direction du curseur next ou nextunique.
  • Être supérieur ou égal à la position de ce curseur et la direction de ce curseur prev ou prevunique.
InvalidStateError Le curseur est en itération ou il a itéré au-delà de la plage.

Exemple

Dans ce petit morceau de code, on fait une transaction, on récupère un magasin d'objet, puis on utilise un curseur afin d'itérer sur les enregistrements contenus dans le magasin. Il n'est pas nécessaire de sélectionner les données selon une clé, on peut simplement toutes les récupérer. On notera qu'à chaque itération de la boucle, on récupère les données correspondantes à l'enregistrement grâce au curseur sous la forme curseur.value.toto. Pour étudier un exemple de travail complet, voir notre exemple IDBCursor (voir l'exemple live).

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

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

      curseur.continue();
    } else {
      console.log('Entrées toutes affichés.');
    }
  };
};

Spécifications

Spécification État Commentaires
Indexed Database API
La définition de 'continue()' dans cette spécification.
Recommendation  

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Support simple 23webkit
24
10 moz
16.0 (16.0)
10, en partie 15 7.1
Disponible dans les web workers (Oui) 37.0 (37.0) ? (Oui) ?
Fonctionnalité Android Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
Support simple 4.4 22.0 (22.0) 1.0.1 10 22 8
Disponible dans les web workers (Oui) 37.0 (37.0) (Oui) ? (Oui) ?

Voir aussi

Étiquettes et contributeurs liés au document

Étiquettes : 
 Contributeurs à cette page : SphinxKnight, gadgino
 Dernière mise à jour par : SphinxKnight,