【发布时间】:2014-01-23 22:47:44
【问题描述】:
我想切换列表项类别的可见性并切换所有列表项的可见性。在another stack overflow post 的帮助下,我可以切换特定类别的列表项。
这是我拥有的用于切换特定类别的列表项的 Javascript:
var switcher = [false, false, false];
var classes = ['easy', 'fun', 'silly'];
$('.toggler').click(function () {
var x = $(this).hasClass('checked');
switcher[$(this).data('switch')] = !x;
$(this).toggleClass("checked", !x);
$('li').each(function () {
var cur = $(this);
cur.addClass('hidden');
$.each(switcher, function (index, data) {
if (data && cur.hasClass(classes[index])) {
cur.removeClass('hidden');
}
});
});
});
我添加了隐藏和显示所有列表项的基本功能,但该功能会阻止单个类切换:
$('.select_all').click(function () {
$(".toggler").toggleClass("checked");
$('li').toggleClass("hidden");
});
如何保持类切换,并添加另一个切换所有项目的按钮?
这是一个小提琴示例:http://jsfiddle.net/BMT4x/1/
【问题讨论】:
标签: javascript jquery html logic toggle