1

Jqueryでバッテリー残量を0%から現在のレベルまでアニメーション化するバッテリーアプリを作ろうとしています。

それは動作していますが、私のアプリがロードされ、スプラッシュ画面が完了し、コルドバもロードされた後、アニメーションはほぼ終了します。私がこれを知っている唯一の理由は、アニメーションを 5 秒に設定したからです。

アプリがロードされたときにアニメーションが開始されるようにしたい。

私が参照しているこの「状態」が直接のイベント名などを持っているかどうかはわかりません。ですから、本当の言葉で説明できない場合は申し訳ありません。:-)

次のコードを検討してください。

document.addEventListener("deviceready", onDeviceReady, false);

function onDeviceReady() {
    window.addEventListener("batterystatus", onBatteryStatus, false);
}

function onBatteryStatus(info) {
  $("div#status").animate({ width: bat + "%" }, 5000);
}
4

3 に答える 3

1

PhoneGap Splashscreen 機能の使用を検討することをお勧めします。

PhoneGap スプラッシュ スクリーン API ドキュメント

Java 側 (DroidGap) でスプラッシュ スクリーンを呼び出し、スプラッシュ スクリーンが表示されている間、バックグラウンドで PhoneGap に独自のジョブを実行させる必要があります。関連するコードを含むこのブログ投稿は、問題の解決に役立ちます。

PhoneGap のスプラッシュ スクリーン

これで、PhoneGap が読み込まれ、スプラッシュ スクリーンが完全に表示されます。これで問題が解決することを願っています!!

于 2013-03-12T16:49:11.770 に答える
1

私が見る限り、あなたは正しい方向に進んでいるように見えます。これが私のベースCordovaプロジェクトがどのようにセットアップされているかです。

Javascript

var app = {
// Application Constructor
initialize: function() {
    this.bindEvents();
},
// Bind Event Listeners
//
// Bind any events that are required on startup. Common events are:
// `load`, `deviceready`, `offline`, and `online`.
bindEvents: function() {
    document.addEventListener('deviceready', this.onDeviceReady, false);
},
// deviceready Event Handler
//
// The scope of `this` is the event. In order to call the `receivedEvent`
// function, we must explicity call `app.receivedEvent(...);`
onDeviceReady: function() {
    // Get battery status HERE
}
};

そして、「index.html」でアプリクラスを次のように初期化します。

<script type="text/javascript">
    app.initialize();
</script>
于 2013-03-12T13:40:21.537 に答える
1

cordova-jquerymobile-boilerplateを試すことができます。定型文で作業を開始する必要があります。これにより、迅速かつ安全に作業を進めることができます。

于 2013-03-12T14:02:27.957 に答える