3

为什么 phonegap 不显示警报通知?(在 iPhone 5.1.1 上运行,phonegap phonegap-2.1.0-0-g26d211b,山狮 10.8.2,xcode 4.4.1)

<html>
<head>
<link rel="stylesheet" href="themes/css/apple.css" title="jQTouch">
<script src="src/lib/zepto.min.js" type="text/javascript" charset="utf-8"></script>
<script src="cordova-2.1.0.js" type="text/javascript" charset="utf-8"></script>
<script src="src/jqtouch.min.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
    $(document).ready(function(){
     try
     {
        navigator.notification.alert('Hello', ok, 'Title', 'Button!');  
     }
     catch(e)
     {
        alert("doesn't support!!");
     }
    }
    function ok() {}
</script>
</head>
</html>
4

1 回答 1

8

因为您试图在加载 phonegap/cordova 框架之前显示警报。

$(document).ready(function(){在这里没有帮助你,你必须使用这个事件来检查 phonegap 是否成功加载:

document.addEventListener("deviceReady", deviceReady, false);

function deviceReady() {
    // Now safe to use the PhoneGap API
}

有关此事件的更多信息:http: //docs.phonegap.com/en/1.0.0/phonegap_events_events.md.html

PhoneGap 由两个代码库组成:native 和 JavaScript。在加载本机代码时,会显示自定义加载图像。但是,只有在 DOM 加载后才会加载 JavaScript。这意味着您的 Web 应用程序可能会在加载之前调用 PhoneGap JavaScript 函数。

于 2012-12-24T23:14:11.463 回答