我有一個網站在Chrome/Safari中完全正常運行,並嚴重依賴SQLite存儲/訪問數據。但是,在Firefox中測試時,第一次調用openDatabase()時會出錯。這是我相當標準openDB功能:通過Javascript進行SQLite調用時出現Firefox錯誤
function openDB(){
try {
if (!window.openDatabase) {
alert('not supported');
} else {
var shortName = 'tales';
var version = '1.0';
var displayName = 'Tall Tales Database';
var maxSize = 65536; // in bytes
db = openDatabase(shortName, version, displayName, maxSize);
// You should have a database instance in db.
}
} catch(e) {
// Error handling code goes here.
if (e == 2) {
// Version number mismatch.
alert("Invalid database version.");
} else {
alert("Unknown error "+e+".");
}
return;
}
}
就像我說的 - 的openDatabase是不確定的,當我提醒它,並且打印出未知的錯誤是「不支持」。我認爲SQLite實際上在Firefox中得到了支持,我是否做錯了什麼或需要瀏覽器特定的代碼?
謝謝! Claudia
雖然它不是「他們自己的數據庫API」。它也是一個W3C標準,而且IndexedDB正在由Mozilla,Chromium和Microsoft積極開發和實施。 – sdwilsh 2010-10-03 17:12:53
@sdwilsh:那麼我的意思是Mozilla特別對異步API做出了很大的貢獻。這是他們自己的API,因爲他們認爲並設計了它。無論如何,我編輯我的帖子是爲了讓它更清楚,它不是一個「封閉」的解決方案 - 也就是說,他們正在積極努力使規範達到其最終狀態以供所有人使用。謝謝你指出,雖然。 – 2010-10-03 17:57:41