这是我的jquery代码:
$(document).on('click', '.filter_author_wrapper', function(event) {
var filter_author_wrapper_selected = $('.f_a_w_selected');
var selected_authors_num = filter_author_wrapper_selected.length;
if ($(this).hasClass('f_a_w_selected')) {
$(this).removeClass('f_a_w_selected')
.queue(function() {
var filter_authors_selected = $('#filter_authors_selected');
filter_authors_selected.html(selected_authors_num + ' /');
$(this).dequeue();
});
} else {
$(this).addClass('f_a_w_selected')
.queue(function() {
var filter_authors_selected = $('#filter_authors_selected');
filter_authors_selected.html(selected_authors_num + ' /');
$(this).dequeue();
});
}
});
每次点击一个元素.f_a_w_selected
时,如果已经应用了类{{1}},则删除该类,并计算该类有多少元素。
上面的代码计算在单击之前具有特定类的元素。如何应用此类并通过单击计算此类的元素?
我希望这是可以理解的!
答案 0 :(得分:2)
$(document).on('click', '.filter_author_wrapper', function(event) {
$(this).toggleClass('f_a_w_selected');
var num = $('.f_a_w_selected').length;
$('#filter_authors_selected').html(num + ' /');
});
此外,document
可能不是您.filter_author_wrapper
的最近祖先,因此为了在委派活动中获得更好的效果,请将您的处理程序附加到最近的 初始化时DOM中存在的父元素