Test IndexedDB cursor iterates correctly over values added during iteration. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". dbname = "cursor-added-bug.html" indexedDB.deleteDatabase(dbname) indexedDB.open(dbname) trans = event.target.transaction PASS trans is non-null. objectStore = db.createObjectStore('test') objectStore.add(1, 1) objectStore.add(2, 2) objectStore.add(3, 3) trans = db.transaction(['test'], 'readwrite') trans.objectStore('test').openCursor() PASS event.target.result.key is 1 trans.objectStore('test').add(6, 6) event.target.result.continue() PASS event.target.result.key is 2 trans.objectStore('test').add(5, 5) event.target.result.continue() PASS event.target.result.key is 3 trans.objectStore('test').add(4, 4) event.target.result.continue() PASS event.target.result.key is 4 event.target.result.continue() PASS event.target.result.key is 5 event.target.result.continue() PASS event.target.result.key is 6 event.target.result.continue() PASS counter is 6 PASS successfullyParsed is true TEST COMPLETE