第一次iphone应用程序加载phonegap jquery mobile时,不会创建数据库

时间:2012-01-17 20:02:56

标签: javascript html5 web-applications jquery-mobile cordova

我有一个Iphone应用程序,它依赖于每次应用程序启动时创建的HTML数据库。以下代码用于创建数据库:

$('#Startup0').live('pageshow',function(event, ui){ 
                try {
                        html5sql.openDatabase("app_db", "App Database", 256*1024);
                        $.get('js/milestones.sql',function(sql){
                            html5sql.process(
                                sql,
                                function(){ //Success
                                    console.log("Table Created");                                   
                                },
                                function(error, failingQuery){ //Failure
                                    console.log("Table Not Created");
                                }
                            );
                        });
                    }
                catch (error) {
                        console.log("Error: " + error.message);
                }
            });

milestones.sql包含所有必要的查询,以便创建表,并插入记录。

当我在浏览器上测试它时,它就像魅力一样运行。现在,当我去Iphone模拟器或Android模拟器时,直到我第二次访问索引页面时才创建数据库。仅供参考,数据库仅在索引页面上创建。

我使用了Jquery Mobile拥有的所有页面事件:pagebeforeshow,pageshow,pagebeforecreate,pagebeforeload,pageload,pagebeforechange,pagechange,pageinit。但我总能得到相同的结果。

有人知道如何在页面第一次显示时创建数据库而不必返回它吗?

先谢谢你们。

0 个答案:

没有答案