2009-03-15 21 views

答えて

1

私は既存のスクリプトについてはわかりませんが、スプラッシュ画面の実装方法を教えてください。

私はJQueryを使用するように提案します。なぜなら、これは私の選択したJSライブラリとして選択したものですが、他のものも同様です。

まず、JSメソッドでは、ポップアップを表示する必要があります。これを行うには、JQuery Dialog widgetを使用できます。同じ方法で、あなたのajax呼び出しを行います。 Ajaxは本質的に非同期なので、コールが完了したときのメソッドとコールのエラーが発生したときのメソッドを設定します。どちらの方法でも、最初に行うべきことは、モーダルポップアップを隠すことです。

ここで最後のトリックがあります。接続の喪失などの予期せぬ状況で正常に失敗したい場合があります。したがって、ダイアログを表示するときに、エラーケースを処理するようにjavascript timeoutを設定して、ダイアログが永久に表示されないようにする必要があります。その方法では、ダイアログが表示されているかどうかを確認し、表示されている場合は非表示にします(エラーメッセージが表示される)。

私はそれがあなたを得るために十分な情報であることを望みます。 JavaScriptを初めてお使いになったとしても、これは難しいことではないので、学ぶ良いプロジェクトです。

6

トリックは、スプラッシュ表示を有効にした後にレンダリングの再ペイントを有効にしてから、長時間実行されているJSで終わってしまうことです。これを行うには、setTimeoutメソッドを使用します。例えば

あなたが表示スプラッシュと仮定すると、あなたがあなたのコードを実行するには、この機能を使用することができます表示スタイルなしでDIVである: -

function splash(splashDivId, fn) 
{ 
    var splashDiv = document.getElementById(splashDivId) 
    splashDiv.style.display = "block"; 
    setTimeout(function() { 
     fn() 
     splashDiv.style.display = "none"; 
    }, 100); 

} 

使用法: - 私はjQueryのを使用

splash("mySplashDiv", longRunner) 

function longRunner() 
{ 
    //This may take a while 
} 
1

blockUIあなたが説明したことを達成するためのプラグイン。単に例を見て、それは非常にカスタマイズ可能で、小さなフットプリントを持ち、簡単な小さな呼び出しで不思議を実行することができます。

関連する問題