1 <html> 2 <body> 3 <p>This is a test that only applies to IndexedDB. <span id=enabled>Our test for whether you have it enabled seems to have failed.</span></p> 4 5 <p>Please follow these steps in order:</p> 6 7 <p>First, click <a href="javascript: setData()">here</a> to open a database and set some data within it.</p> 8 9 <p>Next, close the browser and then re-open this page.</p> 10 11 <p>Lastly, click <a href="javascript: verifyData()">here</a> to verify the data was there</p> 12 13 <p>Status: <span id=status>...</span></p> 14 15 <script> 16 17 if (!('webkitIndexedDB' in window)) 18 document.getElementById("enabled").innerHTML = "<font color=red>Your build does NOT seem to have it enabled. So all code on this page is disabled.</font>"; 19 else 20 document.getElementById("enabled").innerHTML = "<font color=green>Your build seems to have it enabled.</font>"; 21 22 function status(str, color) 23 { 24 if (color) 25 str = "<font color='" + color + "'>" + str + "</font>"; 26 document.getElementById("status").innerHTML = str; 27 } 28 29 function setData() 30 { 31 status("Something must have gone wrong (or we're still working)...", "red"); 32 33 webkitIndexedDB.open("someDB", "some description").onsuccess = function() { 34 event.result.setVersion("some version").onsuccess = function() { 35 var db = event.source; 36 while (db.objectStoreNames.length) 37 db.removeObjectStore(db.objectStoreNames[0]); 38 db.createObjectStore("test").put("value", "key").onsuccess = function() { 39 status("Value set", "green"); 40 } 41 } 42 } 43 } 44 45 function verifyData() 46 { 47 status("Something must have gone wrong (or we're still working)...", "red"); 48 49 webkitIndexedDB.open("someDB", "some description").onsuccess = function() { 50 try { 51 var result = event.result.transaction([]).objectStore("test").get("key"); 52 result.onsuccess = function() { 53 if (event.result == "value") 54 status("Value verified", "green"); 55 else 56 status("Value incorrect!", "red"); 57 } 58 result.onerror = function() { 59 status("An error occurred: " + event.code + " " + event.message, "red"); 60 } 61 } catch (e) { 62 status("An exception occurred: " + e, "red"); 63 } 64 } 65 } 66 67 </script> 68 </body> 69 </html> 70