3

なぜこれがうまくいくのか、誰かが私に説明できますか:

parentBox.on('click', '.close', function() {
   parentBox.fadeOut();                  
   return false; 
 });

しかし、これはしません:

var closeBox = $('.close');
parentBox.on('click', closeBox, function() {
   parentBox.fadeOut();
   return false; 
});

にキャッシュ'.close'するvarと、親要素のどこをクリックしても、イベント ハンドラがparentBoxではなくにアタッチされているかのようにフェードアウトし'.close'ます。

ありがとう。

4

1 に答える 1

4

これは機能しません。

.on( events [, selector] [, data], handler(eventObject) )

特定のオブジェクトにバインドする必要がある場合は、2 番目のパラメーターは常にセレクター(文字列型) です。

 closeBox.bind('click',function(){/* code here */})
于 2012-12-23T10:21:48.490 に答える