仅针对特定元素绑定到jQuery事件

时间:2009-11-04 19:38:12

标签: colorbox jquery

我对jQuery相对较新,但下面的代码似乎合乎逻辑,但是没有按照我的预期工作。我正在使用Colorbox jQuery plugin

我的目的是只为'a'元素添加一个'cbox_closed'事件的监听器,该元素的id包含'Remove'。不幸的是,正如目前实施的那样,这会在“cbox_closed”事件的所有升级中添加监听器。

我错过了什么或者这不是添加事件监听器的有效方法吗?

$('a[id*="Remove"]').bind('cbox_closed', function() {
    var row = $($.fn.colorbox.element()).parents('tr');
    row.fadeOut(1000, function() {
        row.remove();
    });
});

2 个答案:

答案 0 :(得分:5)

试试这个:

$(document).bind('cbox_closed', function() {
  if ( $( $.fn.colorbox.element() ).attr('id').match('Remove') ){
   alert('Remove me!');
  }
})

当ColorBox关闭时,事件将始终触发。您必须修改插件本身以防止在特定情况下触发此事件。因此,上面的代码绑定到事件然后查找您的特定ID。我希望我的解释有所帮助:)

答案 1 :(得分:0)

不应该是

$("a[id*='Remove']").bind('cbox_closed', function() {

您似乎在Remove

附近缺少qoutes

或者我误解了你的问题