首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >openDatabase卡住了

openDatabase卡住了
EN

Stack Overflow用户
提问于 2012-06-21 15:54:13
回答 1查看 396关注 0票数 1

我有一个与Blackberry Web工作的项目,这是我第一次进行移动编程。我想用window.openDatabase创建缓存数据库,但是有些奇怪,我把警报放在后面来显示这个数据库,但是它没有显示任何东西。

我也在这个函数之前和之后放了alert,只在这个函数之前显示alert,我试着把try catch error放进去,但它仍然没有显示错误消息。

需要你的帮助

Thx

下面是我的简单代码:

代码语言:javascript
复制
$(document).ready(function() {
    try {
        if (!window.openDatabase) {
            alert('not supported');
        } else {
            var shortName = 'mydatabase';
            var version = '1.0';
            var displayName = 'My Important Database';
            var maxSize = 65536; // in bytes
            alert("prepare to open database");
            var db = openDatabase(shortName, version, displayName, maxSize);
            alert("open Database");
            // 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;
    }

    alert("Database is: " + db);
});​
EN

回答 1

Stack Overflow用户

发布于 2014-10-07 09:42:34

您的问题似乎与try/catch语句的位置有关。我重新整理了您的示例代码,它正在工作:

代码语言:javascript
复制
$(document).ready(function () {

if (!window.openDatabase) {
    alert('not supported');
} else {
    try {
        var shortName = 'mydatabase';
        var version = '1.0';
        var displayName = 'My Important Database';
        var maxSize = 65536; // in bytes
        alert("prepare to open database");
        var db = openDatabase(shortName, version, displayName, maxSize);
        alert("open Database");
        // 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;
    }

    alert("Database is: " + db);
}
});

请记住,并非所有浏览器都支持openDatabase。FireFox和IE会给出“不支持”的提示,而Chrome和Safari会显示剩下的提示。

下面是测试修改后的代码http://jsfiddle.net/sdarya/0pkvLfpv/的JSFIDDLE链接

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11133801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档