我有一个网站在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