1

jQuery モバイルを使用して単純な phonegap ベースのアプリケーションを作成しています。

これが私のHTMLのヘッダーです

<script src="scripts/jquery-1.8.2.min.js"></script>
<script src="scripts/jquery.mobile-1.1.1.min.js"></script>
<script src="scripts/jquery.jsonp-2.4.0.min.js"></script>
<script type="text/javascript" charset="utf-8" src="scripts/cordova-2.2.0.js"></script>
<script src="scripts/my.js"></script>

追加したすべての HTML コードの後の本文

<script>
$(document).ready(function() {
navigator.notification.confirm('Do you want to quit', 
        function(){
            if(button == "1"){
                 navigator.app.exitApp(); }
        }, 
        'QUIT TITLE', 
        'OK,Cancel'  
    );
</script>

エラーが発生します

12-27 21:28:17.998: D/CordovaLog(17212): Uncaught TypeError: 未定義のメソッド 'confirm' を呼び出せません 12-27 21:28:17.998: D/CordovaLog(17212): file:///android_asset/ www/app.html: 行 227: Uncaught TypeError: 未定義のメソッド 'confirm' を呼び出せません

ご覧のとおり、必要なスクリプトをすべて読み込んで、 navigator.notification.confirm内部を呼び出しています。$(document).ready

なぜこのエラーが発生するのかわかりません。助けてください。

4

1 に答える 1

4

まず、script タグ内のコードが適切に閉じられていません。

正常にロードされる前に、Phonegap ライブラリを使用しようとしています。$(document).ready(function() { jQuery モバイルでは使用しないでください (これについては下部のリンクで詳しく説明します)。また、phonegap ライブラリが読み込まれているかどうかもわかりません。

コードは次のように初期化する必要があります。

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

function deviceReady() {
    navigator.notification.confirm('Do you want to quit', 
        function(){
            if(button == "1"){
                navigator.app.exitApp(); 
            }
        }, 
        'QUIT TITLE', 
        'OK,Cancel'  
    );
}

詳細については、こちらをご覧ください: https://stackoverflow.com/a/14010308/1848600およびこちら: http://docs.phonegap.com/en/1.0.0/phonegap_events_events.md.html

于 2012-12-27T16:27:23.590 に答える