我不明白为什么script无法正常工作。我更改了div的类,并尝试通过类名来监听绑定到elem的事件。
$('.glyphicon-minus').on('click', function () {
var item = $(this).closest('.item');
var child = $(item).children('.item-content');
$(child).hide();
$(this).removeClass('glyphicon glyphicon-minus').addClass('glyphicon glyphicon-plus');
});
$('.glyphicon-plus').on('click', function () {
var item = $(this).closest('.item');
var child = $(item).children('.item-content');
debugger;
$(child).show();
$(this).removeClass('glyphicon glyphicon-plus').addClass('glyphicon glyphicon-minus');
});
答案 0 :(得分:2)
您的绑定已经设置,因此不考虑新的类添加。您需要在DOM树上抽象绑定并将它们委托给动态节点:
更改$('.glyphicon-plus').on('click',
到$('.some-permanent-container-div').on('click', '.glyphicon-plus',
如果您回忆几年前人们使用$('.my-div').live('click'
来实现这一点,但所做的只是将绑定附加到document
和委托。绑定到最近的静态容器并尽可能少地委托子层,效率会高得多。