私は長い実行方法を持っています - そして、私は操作が進行中であることをユーザに示したいと思います。これはNOTとAJAX呼び出しですので、過去に使用した一般的なパターンを使用して、AJAXイベントの前にスピナーを表示してから、それを成功に隠すことはできません。長時間実行されているイベントの中でページ要素を更新するにはどうすればよいですか?
私の場合、私はajaxコールを作っていません、代わりに非常に重いDOM操作をしています。
私はjsFiddle.netのテスト例を持っていました。イベントをキャプチャする方法を学ぶのが大好きです。現時点では、私の「待ちのメッセージ」
完全なサンプルコードはここにある非常に遅すぎる:(ある私の操作が完了すると同じ正確な時間でdivのアップデート:http://jsfiddle.net/rsturim/97hrs/6/
のJavascript(jQueryの)
$(document).ready(function() {
$("#link-action").click(function(e) {
$("#wait-message").text("starting ...");
var count = longRunningMethod(1000000000);
$("#result").text(count);
$("#wait-message").text("completed.");
});
var longRunningMethod = function(countUpTo) {
var i = 0;
while (i <= countUpTo) {
i++;
}
return i;
};
});
HTML:ここ
<div id="wait-message">
push button please
</div>
<hr />
<button id="link-action">Run Operation</button>
<hr />
<h1>Results:</h1>
<div id="result"> </div>
重複:http://stackoverflow.com/questions/7342084/jquery-javascipt-how-to-wait-for-manipulated-dom-to-update-before-proceeding-w – ampersand