2

Backbone.jsビューのjQuery$とthis。$の違いは何ですか?ビューで、コレクションのリセットイベントをリッスンして、以下のコードを使用して要素を空にしました

//code in View
this.$("#the_id").empty();

ただし、要素が空にならなかったため、コードを次のように変更しました

$("#the_id").empty();

今回は動作します。それで、なぜthis。$は機能しないのですか?

4

1 に答える 1

2

ビューでの呼び出しは、またはthis.$( selector )の呼び出しと同じです。$( selector, this )$(this).find( selector )

セレクターIEのコンテキストを提供し、セレクターthisに一致するように下の要素のみが検索されますが、通常のjQuery$(selector)はドキュメントのルート全体から検索を開始します。

ビューは、それが所有していない要素を操作するべきではありません。呼び出しthis.$("#the_id").empty();が何もしない場合は、要素がビューの「制御領域」の下にないか、そもそも存在しないことを意味します。

于 2012-11-07T16:30:31.303 に答える