0

私は、Google ニュースまたは Google リーダーのようなページ (つまり、データとイベントでいっぱいのページ) を設計しています。このページを完全に ajax ベースにすることを計画しました。Google ニュースのトピックの機能もあります(左側のサイドバーに表示)。また、この現在のトピック リストにトピックを追加する機能を追加することも計画しました。しかし、Google とは異なり、このサイドバーの上に入力フィールドを提供しています。ユーザーはトピックに何かを入力して直接トピックを追加できます。問題は、この新しいトピックを追加したときに、他のすべてのトピックに関連付けられているイベントが関連付けられていないことです。
ページに新しい html を追加するときに、イベントが関連付けられていることを意味します。
SOを検索した後、イベントをバインドするために使用できることがわかりました.live()。しかし.live()に代わって Jquery から廃止されました.on()。しかし、.on()私が思うに、将来のイベントの添付ファイルを提供しないでください。(そのドキュメントには、将来のイベント処理については何も書かれていません)

今、私はトピックを追加しただけです。しかし、外出先で多くの新しい html を追加する必要があります。それらにイベントを添付する方法はありますか。現在、私は に基づいてイベントを添付しています.class

既にイベントが添付されている ajax を使用して HTML を追加する最良の方法は何ですか。

このトピックに関するその他の提案は、私が今のところ初心者だと思うためです。

4

1 に答える 1

1

.liveを使用するのと同じ方法で.onを使用できます。また、 .onイベントをバインドして、次のような将来の要素のためにそれ自体をドキュメント化できます。

$(document).on("click",".yourDynamicElement", function(){  
  console.log('i have been clicked'); 
});  

または、ドキュメントを動的に作成された要素の既存の親/コンテナ要素に置き換えることができます

そのようなことを意味しましたか

于 2012-06-13T09:09:37.170 に答える