0

「ドキュメント」以外のコンテキストで一連のリスナーを実行する方法はありますか?

これは、セレクターを制限する良い方法です。

このようなもの:

$(".main", function(){
   $(".child-1").click(function() {  /* .... */ });  // .main .child
   $(".child-2").click(function() {  /* .... */ });  // .main .child-2
   $(".child-3").click(function() {  /* .... */ });  // .main .child-3
});

それ以外の:

$(".main .child-1").click(function() {  /* .... */ });  // .main .child
$(".main .child-2").click(function() {  /* .... */ });  // .main .child-2
$(".main .child-3").click(function() {  /* .... */ });  // .main .child-3

これを使用すると、1 つの大きな (ドキュメント) スコープの代わりにスコープを使用できます。

それで、これはjQueryのどこかに存在しますか?? グーグルを試してみましたが、実際には何も見つかりませんでした..

4

2 に答える 2

2

最も近いものは次のようなものです

var $ctx = $('#context');

$ctx.find('.something').click(function(){ });
于 2013-01-21T13:53:30.303 に答える
-1
$('.main').on("click", ".child-1", function() {

}).on("click",".child-2", function() {

}).on("click",".child-3", function() {

});

または、全員が同じことをすると...

$('.main').on("click", ".child-1, .child-2, .child-3", function() {

});

http://jsperf.com/on-click-performance - この方法が他のソリューションよりも速いことがわかります。

于 2013-01-21T13:53:21.467 に答える