与.on()绑定的Jquery事件

时间:2012-12-23 10:10:47

标签: javascript-events event-handling jquery

有人可以向我解释为什么会这样:

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' }。

感谢。

1 个答案:

答案 0 :(得分:4)

这不起作用,因为

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

第二个参数始终是选择器(字符串类型),如果需要绑定到特定对象使用

 closeBox.bind('click',function(){/* code here */})