問題タブ [jquery-deferred]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
7 に答える
14209 参照

javascript - jQuery の deferred を使用した ajax リクエストの連鎖

サーバーを複数回呼び出す必要がある Web アプリがあります。これまでのところ、ネストされた長いコールバック チェーンがありました。whenしかし、jQuery などの機能を使用したいと思いthenます。ただし、を使用した後、再び実行することができないようですthen

私は何を間違っていますか?get2番目の呼び出しが実行されていることがわかるので、スコープの問題があると思います。done 関数に渡される引数はまだ最初の要求であるため、 2 つの異なるargs変数を使用しても役に立ちません。get

0 投票する
2 に答える
1137 参照

ajax - jQuery $.whenは常に失敗します:成功/失敗を判断するために探している$.whenは何ですか?

2 つの投稿の結果をチェーンする必要があり、http: //api.jquery.com/jQuery.when/にある延期されたサンプルから始めました。

私の場合、イベント オブジェクトとクロムが次のプロパティを報告しても、failedFunction は常に発生します。

次のフォームを使用しても同じ結果になります。

成功/失敗を判断するために探しているときの $.when は何ですか? readyState === 4 および status === 200 のときに $.when を起動して successFunction を起動するにはどうすればよいですか? サーバーから送信していないものを探していますか?

0 投票する
1 に答える
118 参照

jquery - ajaxテンプレートの読み込みのためのjQueryの延期

これは例http://jsfiddle.net/FredyC/3pynD/2/ですが、まだ完全には機能していませんが、jQueryでjsfiddleエコーサービスを正しく使用する方法がわかりません。

dfdただし、これを実行すると、オブジェクトには機能がないということがポイントですresolve。私の目標は、関数を介しdoneてコンパイルされたテンプレートを取得できるpromiseオブジェクトを常に返す関数を持つことです。後でそのテンプレートが再び必要になったときは、同じものが返されるはずdfdなので、テンプレートを再度フェッチしてコンパイルしなくてもすぐに取得できます。

誰かが私が間違っていることを知っていますか?

0 投票する
3 に答える
176 参照

javascript - オプションの延期などはありますか?

私はこのコードのブロックを書く方法を理解するのが難しいです...

したがって、私が抱えている概念上の問題は、指定された入力に対してサーバーからより多くのデータを取得する必要があることに気付いた後、実行したいコード(コードブロックC)があることです。それはいつも起こるわけではありませんが、私は本質的に実行を一時停止したいと思います。そして、私たちは皆、同期AJAXが犯罪であり、Javascriptの神々からむち打ちをすることで罰せられることを知っています。

最初は、コードブロックCはそれ自体の関数に入れるべきだと思いましたが、コードブロックCには上記の残りのコードに多くの依存関係があるため、面倒になります。

そこで、deferred / promiseを使用することを考えましたが、AJAXが常に発生するとは限らない場合、promiseとしてコードを実行するにはどうすればよいですか?

私が考えることができる「良い答え」に最も近いのは次のとおりでした(しかし、それが実際に「良い答え」であるかどうかはわかりません)...

次に、スコープやクロージャなどに問題があります。何か案は?これについてどうやって行くのかを完全に再編成する必要がありますか?

0 投票する
2 に答える
138 参照

javascript - 異なるJavaScriptファイルが同じ機能を共有する

今、私はWordPress用のいくつかのプラグインを作成しています。すべてが別々に機能する必要がありますが、それらを一緒に機能させるための実装を追加したいと思います。

手始めに、すべてのスクリプトはカスタム名を使用してjQueryを参照します。これは、私の問題が始まる最初の部分です。WordPressには、すべての値を入力したい結合オブジェクトがあります。結合されたオブジェクトの名前は次のとおりmyObjectです。

今私はこれを試しますが、機能しません:

「myObject.jq」は関数ではありませんというエラーメッセージが表示されます。

このように組み合わせたajax関数でこれをさらに拡張したい

これは完全には機能しません。誰かが私がこれをどのように機能させることができるか考えていますか?

0 投票する
1 に答える
2375 参照

javascript - jQuery$.when遅延が機能しない場合

私がやろうとしているのは、ajaxを介した2つの同時画像ロードが実行されたときに何らかのアクションを発生させることです。これを行うために、画像の読み込みが完了したときに解決されるカスタムDeferredを作成しました。

これはJSFiddleで試すことができます。

実用的な例を含むEricHyndsの投稿を参照として使用しましたが、まだ機能していません。何か案は?

0 投票する
3 に答える
3604 参照

javascript - how to create a jQuery loading bar? (like the ones used on flash sites)

I have multiple elements I need to load before the user has control over the page (mostly images, videos, and audio). Currently, I'm loading them with the $.when() function, like this:

Is there any way to create a loading bar that shows the progress (in percentage) of all the elements loading in the background? Like what happens in most flash sites with heavy media, for example: http://www.saizenmedia.com/nightwishsite/

Can it be done purely with jQuery or Javascript?

Thanks in advance!

0 投票する
1 に答える
76 参照

javascript - 必要になるまで実行を延期する

次のシナリオで jQuery deferreds を使用していることは知っています。

非同期リクエストがあります。このリクエストが戻ってくるたびに、コードの 1 つ以上のセクションを実行したいと思います。

これが私の問題です。最初の .when ステートメントに到達するまで、非同期リクエストを実際に送信したくありません。

例えば:

さまざまなデータ要求に対して、たとえば 50 の異なる遅延オブジェクトをロードする init 関数があります。必要なときにだけ、これらすべてを一度に起動したくないのは明らかです。データは、将来の .when ステートメントでロードされます (遅延オブジェクトが解決されます)。

ちょっと複雑ですが、読んでくれてありがとう!:D

これが私たちが持っているものです

init() = 関数 { var data1 = someDeferredRequest(); //何とか、これらの多く }

.doSomethingElse() = function { // data1 への呼び出しは、以下のインスタンスのように、取得しようとする最初のインスタンスでのみ開始されるようにします。init $.when(data1).then(); で起動したくありません。

}

0 投票する
2 に答える
878 参照

jquery - cssの読み込みを待つ

外部css(サーバー側ではない)を動的にロードする必要があります。その後、いくつかの関数を実行します。

cssのロードを待つにはどうすればよいですか?

ありがとう。

0 投票する
1 に答える
37 参照

javascript - 配列アイテムを渡すjs/jquery

こんにちは皆さん、ここで助けが必要です。私の悪い思考の脳に:

私はオブジェクトを持っています:

関数の例:

私はどういうわけかこのオブジェクトをここに渡す必要があります:

もちろん、この考えは間違っています:

これを手伝ってもらえますか?それともやり方が間違っているのでしょうか?私にアドバイスできますか?

ありがとう !