选中的选项卡jquery不使用附加元素

时间:2013-08-04 11:28:55

标签: jquery css

我浏览了其他如何在列表中突出显示当前/选定选项卡的示例,逻辑非常简单直接,这是

    $('li').click(function (){      
$('li').not(this).removeClass('active').addClass('list');
}); 

但是我通过jquery的append方法附加的新元素没有响应调用..只有现有的li标签可以被操作..我不知道..

demo fiddle

4 个答案:

答案 0 :(得分:1)

更改点击事件,如下所示:

$(document).on( 'click', 'li', function (){      
    $('li').not(this).removeClass('active').addClass('list');
});

JSFiddle

答案 1 :(得分:0)

click不适用于动态添加的元素,仅适用于调用click时页面上的元素。

您需要使用on方法。

类似的东西:

$('ul').on('click','li',function(){//your logic here})

答案 2 :(得分:0)

您需要再次运行这些javascript代码,以便在追加新li标签后绑定它们。您可以通过对代码进行一些更改来实现,并在追加操作后调用该代码。

JS代码:

function BindClickEvents() {
    $('li').unbind('click').bind('click',function (){      
       $('li').not(this).removeClass('active').addClass('list');
    });
  }

现在需要在body load / document ready上调用此方法一次,然后在任何追加操作后再次调用。需要取消绑定才能删除所有可能触发多次点击事件的先前绑定。

答案 3 :(得分:0)

$('ul#task-group').on('click','li',function (){
  // do something
});