Jquery 用这个隐藏类,而不是?
目前,我正在开发一个菜单列表来帮助我改进jQuery,但是我遇到了一个问题。我确信我应该能够使用此函数选择项目,并使用.not()隐藏不需要的项目 我把它放在小提琴上Jquery 用这个隐藏类,而不是?,jquery,Jquery,目前,我正在开发一个菜单列表来帮助我改进jQuery,但是我遇到了一个问题。我确信我应该能够使用此函数选择项目,并使用.not()隐藏不需要的项目 我把它放在小提琴上 菜单 素食鱼餐 汉堡 烟熏鲑鱼 味噌烤茄子黄瓜泡菜饭碗 牛排 鱼和薯条 茄子帕尔米加脆面包屑 $(文档).ready(函数(){ $(“按钮”)。单击(函数(){ var$this=$(this.find(“类”); $this.not($this.hide(); console.log($this); }); }); 您
菜单
素食鱼餐
汉堡
烟熏鲑鱼
味噌烤茄子黄瓜泡菜饭碗
牛排
鱼和薯条
茄子帕尔米加脆面包屑
$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
var$this=$(this.find(“类”);
$this.not($this.hide();
console.log($this);
});
});
您的代码中有一些错误,需要添加一些内容。下面我有一个工作示例。我的变化:
中缺少等号类。相反,您可以使用attr()
获取元素的属性。我将该类设置为一个名为selection
的变量
show()
所有li
元素,以恢复以前单击时隐藏的任何元素,以防需要再次显示它们selection
是否设置为任何值。如果单击无类的“全部显示”按钮,则不会显示。如果设置了该变量,则表示您已单击其中一个食品类别按钮,因此$('.menu').find('li').not('.'+selection.hide()代码>-我们选择所有li
元素,然后使用not()
减去不属于我们类的元素并隐藏它们
$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
//获取已单击按钮的类属性
变量选择=$(this.attr('class');
//显示所有项目
变量$items=$('.menu')。查找('li');
$items.show();
//如果单击的按钮有一个类。。。
如果(选择){
//隐藏没有该类的项目
$items.not('..+selection).hide();
}
});
});代码>
菜单
素食主义者
鱼盘
荤菜
全部展示
汉堡
烟熏鲑鱼
味噌烤茄子黄瓜泡菜饭碗
牛排
鱼和薯条
茄子帕尔米加脆面包屑
啊,我明白了,这是有道理的。谢谢:)
<div class="menu-wrapper">
<h4>Menu</h4>
<button class="vegetarian">Vegetarian</button><button class="fish">Fish dishes</button><button class="meat">Meat Dishes</button><button id="all">Show all</button>
<ul class"menu">
<li class="meat">Hamburger</li>
<li class="fish">Smoked Salmon</li>
<li class="vegetarian">Miso-grilled aubergine & cucumber pickle rice bowl</li>
<li class="meat">Steak</li>
<li class="fish">Fish and Chips</li>
<li class="vegetarian">Aubergine parmigiana with crispy breadcrumbs</li>
</ul>
</div>
$(document).ready(function(){
$('button').click(function(){
var $this = $(this).find("class");
$this.not($this).hide();
console.log($this);
});
});