JQueryで順番に処理を実行したい場合に、
whenとdoneを使うということでやってみたのですが、
「人間の目」には順番に処理されておらず困っています。
具体的には、
$.when($("#image").remove()) .done(alert("hogehoge"));
というものを実際に見ると、
メッセージhogehogeが表示されても
画像#imageはブラウザ上に残っています。
だからといって「順番に処理されていない」というわけではきっとないのだろうと思います。
間にVBでいうところのdoeventsみたいなのがあると良いのかなーとは思いますが、
人間の目から見て、画像が消える→メッセージがでる、という処理になる方法は何かないものでしょうか?
今回の例での場当たり的な対応としては、
$.when($("#image").remove()) .done(setTimeout('alert("hogehoge")',100));
のようにすれば良いのかもしれませんが、
when内の処理に時間がかかったり、かかる時間が一定でない場合など、
setTimeoutに設定する時間にある程度の余裕を持たせないといけなくなると思います。
こういう匙加減の問題はなるべく無くしたいので、
これ以外の方法で何か良い方法があればと思います。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/07 04:22