1

我有以下问题,我对 Phonegap 有点陌生!在我的索引页面上,我有三个函数,它们将创建一个 Javascript 提示,询问用户的姓名、电子邮件和标题(职位),并将每个函数存储到 localStorage。像这样的三个项目:

function promptName(){
  var salesPName = prompt("Bitte geben Sie Ihren Namen","");
  if(salesPName == null || salesPName == ""){
    promptName()
  }else{
    localStorage.setItem("salesP", salesPName);
  }
}

然后使用$(document).ready我调用这三个函数:

$(document).ready(function(){
  if(!localStorage.getItem("salesP")){
    promptName();
    promptEmail();
    promptPosition();
  }
});

这一切都运行良好,但是当部署到我的 Android 设备时,我会收到提示,但在完成所有三个操作之前,我会收到一个错误对话框,说明:

与服务器的连接不成功(file:///android_asset/www/appname/index.html)

删除提示会删除错误,但我需要此功能。我尝试了不同的调用函数的方法,例如在body标签的onload事件上或使用.load(). 我仍然收到此错误。我考虑过设置一个 Javascript 间隔以在几秒钟后(一旦加载页面)调用它,因为我确信问题是由于 Javascript 的阻塞性质造成的。有没有人遇到过这个?

请注意,我在文件中添加了以下内容com.mypackage.xxx.java(根据 phonegap 的建议,连接到服务器不成功

super.setIntegerProperty("loadUrlTimeoutValue", 10000); 

我仍然遇到问题!

4

1 回答 1

3

在没有任何工作的setTimeout() 情况下,我像这样围绕着我的状况...

$(document).ready(function(){

        setTimeout(function (){if(!localStorage.getItem("salesP")){
            // item doesn't exist... so let's raise some dialogs to capture the name, email address and title
            promptName();
            promptEmail();
            promptPosition();
            }
        }, 5000)

});

现在它工作正常......有点软糖但是那又怎样,如果有人对更好的解决方案有任何想法或对此有任何反对意见,请告诉我

于 2012-08-14T08:44:54.057 回答