2

これは最近私を悩ませているものであり、関連する質問 (ここここなど) を見つけましたが、それらは私が探しているものではなく、あるべきだと思われるので、行方不明になっているのではないかと心配しています。なにか。

AJAX リクエストが HTML のスニペットと、何らかの方法で HTML を操作 (または初期化) することを意図した JavaScript を返すのは、(少なくとも私の場合は) かなり一般的なパターンです。私がやりたいことは、JavaScript から直接挿入されている HTML を参照できるようにすることです。

<div class="fancy_div">
  <select></select>
</div>
<script type="text/javascript">
  myAlreadyLoadedLibraryFunction(justInsertedDivAbove);
</script>

しかし、私の理解では、スクリプト ブロックはページ上の位置をほとんど認識しておらず、要素を直接参照することはできませんが、相対的です。

ここで提案されているのは、次のいずれかです。

  1. id を div に適用し、そのように参照します
  2. jQuery では、クラスを使用して、そのクラスのすべての div を反復処理します

#1については、相対的に参照するだけでよい要素に一意のIDを生成するのはやり過ぎだと思います。

#2については、そのクラスのページ内のすべての要素を反復処理するのは非常にやり過ぎのようです

私は現在、プロトタイプから離れてより多くの jQuery に移行する過程にあるため、jQuery スタイルに完全に精通しているわけではありません (ただし、非常に興味があります)。

私はこれを考えすぎているか、何かを見逃しているか、私のパターンが間違っているか、単にナッジが必要なだけかもしれません - お時間をいただきありがとうございます!

4

1 に答える 1

0

何十万回も行う予定がない限り、要素を取得するために使用する新しい一意の ID を作成しても、実際にはパフォーマンスに大きな影響はありません。実際、これが最速の方法であることはほぼ間違いありません。

于 2012-06-05T19:01:48.880 に答える