2011-09-08 11 views
1

こんにちは親切な人、 これに関連する他の投稿がいくつかありますが、悲しいかな、誰もまだ私のバグを解決していません...と私はちょうど私は間違っていなければなりません。ここでjQuery Mobile - pageLoadingまたはprogress msg仕事

は(簡単な住宅ローンの計算テストアプリです)私のテストのWebページです:

[http://www.simdock.com/TestJQueryMobile-loadmsg-progress.htm]

Iと思いますページのロードmsg、または進捗状況のメッセージを表示するのと同じように、次のページがページ1またはページ2(または何ページ)に行くときにレンダリングされるように...長い支払いスケジュールリストを出力しているとき、または任意のリスト...それは生成するために少しかかります...実際に動作するページの読み込みおよび/または進行のmsgが必要です。

メインメニューの電卓ページからページ1またはページ2に切り替えると、何らかの種類のページ読み込みメッセージが表示されるはずですが、うーん、私が働くことができるのは、警告メッセージですイベントから。

私は、ページの読み込みMSGを取得するためのいくつかの方法を試してみた:

最初の方法は、以下のstackoverflowのリンクで示唆された。

[http://stackoverflow.com/questions/6085679/ [1]

私のページをプルアップするスクリプトスニペットは、次のとおりです(このトピックの他の投稿からエミュレートしようとしています):


<script type="text/javascript"> 
$('#one').live('pagebeforeshow',function(event, ui){ 
//PAGE ID "one" SELECTED EVENT 
alert('Just selected page one!'); 
$.mobile.pageLoading(); 
$.mobile.loadingMessage = "calculating payment schedule..."; 
$.mobile.showPageLoadingMsg(); 
calcMonthlySchedule(); 
$.mobile.hidePageLoadingMsg(); 
}); 
</script> 

単に...しかし警告火災を動作しませんが、など、他に何も起こりませんし、何のエラーMSGのが存在しない以上...

私が試した他の方法Jonathan Starksの本から、HTML、CCS、JavaScriptを使ってAndroidアプリを構築していました(素敵な本ですが、ちょっと高価です)。


<script type="text/javascript"> 
$('#two').live('pagebeforeshow',function(event){ 
    //PAGE ID "two" SELECTED EVENT 
    alert('Just selected page two!'); 
    $('body').append('<div id="progress">Loading...</div>'); 
    calcLongList(); 
    $('#progress').remove(); 
    }); 
</script> 

以上も(それが本のサンプルにあるように)何のdivセクションがポップアップされていないとして、(火災を除く警告MSGを)何もしていないようです。

ソーホー...どんなイベントでも、私は何か他のことを考えたり/したりしてはいけません...しかし、何が助けになるのかは分かりません。私はそれを停止する負荷グラフィックスや$.mobile.pageLoading(true);を表示する$.mobile.pageLoading();を使用して、事前

答えて

1

感謝。

メッセージの場合、$.mobile.showPageLoadingMsg()メソッドがあります。

私はそれが動作することを証明するサンプルを作成しました。ちょうどあなたのために、ウッディ:http://jsfiddle.net/a6337/

この方法はpagecreateイベントでは動作しませんが、pageshow上で動作します:

$('#mypageone').live('pageshow',function(event){ 
    $.mobile.loadingMessage = "calculating payment schedule..."; 
    $.mobile.pageLoading(); 
    $.mobile.showPageLoadingMsg(); 
    calcLongList(); 
    //$.mobile.hidePageLoadingMsg(); 
}); 

それを試してみる:http://jsfiddle.net/7fxQf/21/

+0

こんにちは皇帝...うーん...それは問題です:私はあなたと同じ構文コマンドを使用していますが、単に私のページではうまくいきません:-( – woody

+0

うーん...ここでは、showPageLoadingMsgが動作しない方法を示すjsfiddleで私のハックですhttp: //jsfiddle.net/woody2shoes/7fxQf/5/ – woody

+0

もう少し編集された別のバージョンがあります:http://jsfiddle.net/ woody2shoes/7fxQf/12/ – woody