我遇到了一个问题,即制作一个过滤系统,该系统会添加一个类来抑制与复选框条件不匹配的元素的不透明度。当我尝试颠倒过程时,要删除该类,要么使用'toggle'而不是'click',要么循环测试条件,我会遇到错误的复选框无法正常工作(不会出现勾号)。
我想要做的是,在复选框被取消选中后,删除“不透明度”类,以便它返回到初始的,预过滤的页面视图。这是我没有错误的代码,直到删除不透明度类:
$(".filters :checkbox").click(function(){
$('.video-placeholder').addClass('opacity');
$('.filters :checkbox:checked').each(function() {
$("." + $(this).val()).addClass('opacity-full');
});
});
任何帮助都会很受欢迎!我在这里托管了它:http://yaocho-digital.com/83london/ - 谢谢。
JP
答案 0 :(得分:0)
您将在下面找到代码基本表示的jsFiddle,
$('.filters :checkbox:checked').each(function() {
$("." + $(this).val()).removeClass('opacity').addClass('opacity-full');
});
if ( $('.filters :checkbox:checked').length == 0 )
$('.video-placeholder').removeClass('opacity');
通过在匹配时删除不透明度类并且没有应用过滤器时,我希望我能正确理解您的问题!