3

phonegapがアラート通知を表示しないのはなぜですか?(iPhone 5.1.1、phonegap phonegap-2.1.0-0-g26d211b、mountain lion 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は、ネイティブとJavaScriptの2つのコードベースで構成されています。ネイティブコードの読み込み中に、カスタム読み込み画像が表示されます。ただし、JavaScriptは、DOMが読み込まれると一度だけ読み込まれます。これは、Webアプリケーションがロードされる前にPhoneGapJavaScript関数を呼び出す可能性があることを意味します。

于 2012-12-24T23:14:11.463 に答える