1

このアプリをiOSシミュレーターでテストしています

このコードを実行するときはいつでも:

google.load("visualization", "1", {packages:["corechart"]});

電話ギャップアプリケーションが完全に白い画面にクラッシュします。ランダムなコンテンツとボタンがあり.click() jQuery、GoogleチャートAPIの読み込みを開始するリスナーが割り当てられているページがあります。そのボタンをクリックするたびに、すべてが消えて、空白の画面が残ります。

コードは次のとおりです。

$( '#chartsThirdStep' ).live( 'pageinit',function(event){

    $("#chartThirdStepGoButton").click(function(event){

        parseChartInfo();
    });
});

function parseChartInfo() {

    console.log("parseChartInfo()");
    google.load("visualization", "1", {packages:["corechart"]});
    // app completely crashes here - all jquery mobile stuff dissapears
    // and i'm left with a blank screen on the simulator.
    //google.setOnLoadCallback(drawChart);
}

私が使用しているもの:

  • Xcode v4.2
  • コルドバv1.9.0
  • jQuery mobile v1.1.1
  • jQuery v1.7.1
  • https://www.google.com/jsapi
  • Mac OS X v10.6.8
  • iOS Simulator v5.0(272)
4

1 に答える 1

4

まず、ローダーが他の関数内で正しく機能していないように見えるため、「ready」イベントハンドラーの外部でAPIをロードする必要があります。
次に、クリックイベントハンドラーをgoogle.loadコールバック内に配置します。これにより、APIが読み込まれる前にクリックイベントが割り当てられなくなります(したがって、ユーザーはAPIが読み込まれる前にグラフを描画することはできませんが、通常は十分な速度で読み込まれます。ユーザーは違いに気付かないはずです)

于 2012-08-16T06:10:32.790 に答える