javascript - jquery 切换可见性(如果有类)

标签 javascript jquery

我已将所有投资组合项目收集到一个数组中,如下所示。

function SetPortfolioItems(filter) {
    items = $( ".portfolio-item" ); 

    items.toggle("slow");
}

函数参数是一个字符串类名,例如“Print”。我想要做的是隐藏没有“过滤器”类的投资组合项目以及具有“过滤器”类的项目,使它们可见。

最佳答案

对于您的问题:

What I want to do is hide the portfolio items which don't have the class 'filter' and the ones that do, make them visible.

你可以这样做:

function SetPortfolioItems(filter) {
    var str = filter.toLowerCase();

    var invalidItems = $( ".portfolio-item:not(."+str+")"); 
    invalidItems.hide("slow");

    var validItems = $( ".portfolio-item." + str ); 
    validItems.show("slow");
}

SetPortfolioItems('filter');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<div class="portfolio-item">item 1</div>
<div class="portfolio-item filter">item 2</div>
<div class="portfolio-item">item 3</div>
<div class="portfolio-item filter">item 4</div>
<div class="portfolio-item">item 5</div>
<div class="portfolio-item">item 6</div>

关于javascript - jquery 切换可见性(如果有类),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35605535/

相关文章:

javascript - 当鼠标悬停在另一个 div 上时更改 div 背景

javascript - 失败时捕获并触发同一事件

javascript - 如果 Firebase 中存在属性,则获取数据

javascript - 元素为数组时两个数组之间的区别

javascript - 从jquery中的td获取总数

javascript - 姓名,电子邮件验证

javascript - Google map 标记未在 MVC 中显示

javascript - jQuery 相对于其他 JavaScript 库有什么优势?

javascript - FullCalendar - 月 View 中的第一天 - 事件从前一天开始,忽略 nextDayThreshold

javascript - 是否可以在不使用 window.stop() 的情况下停止下载图像/资源