0

Ajax 呼び出しによる動的コンテンツの読み込みを作成するためにページで使用される一連のフレーム (4) があります。

これらのフレームのそれぞれで、親レベルの要素をターゲットにして、それぞれのコンテンツでそれらを更新します。

$("#loadingGrid1",top.document).show();
$("#frameSkills",top.document).hide();

jQueryには、親ページの特定の要素を複数回ターゲットにする代わりに、ページを変数に1回ターゲットするだけの方法があります.

var parentPage=$('#frameSkills',top.document);

そして、この変数を使用して次のようなコンテンツを適用します$(parentPage > #loadingGrid1).hide()

私が何を求めているのかを十分に説明したことを願っています。基本的に、作成するすべての jQuery セレクターで「top.document」を呼び出さなければならず、エネルギーの無駄のように思えます。

4

3 に答える 3

0

このようなものは私には最もきれいに思えます:

var page = $(top.document); //Define once
page.find("#loadingGrid1").show();
page.find("#frameSkills").hide();

あなたが電話をするとき、あなた$(selector, context)はとにかく(とにかくこのようなすべての場合に)context.find(selector)内部に電話をかけています...あなたが行くにつれて読み取り/書き込み/チェーンを簡単にするかもしれません。

于 2010-03-20T12:41:44.533 に答える
0

デリゲートはどうですか?

于 2010-03-19T14:56:33.107 に答える
0

Jquery オブジェクトは、DOM ノードと同様にコンテキストとして使用できます。

var parentPage = $('#frameSkills',top.document);
$("#myselector", parentPage).dostuff();

findまたは、次の関数を使用できます。

parentPage.find("#myselector").dostuff();
于 2010-03-19T14:56:03.040 に答える