【问题标题】:How to count individual items in different containers with the same class?如何计算同一类不同容器中的单个项目?
【发布时间】:2021-11-18 01:12:13
【问题描述】:

寻找我发现这个question和另一个question的类似问题

但是当我有同一个容器来计算每个容器所拥有的物品时,这对我不起作用,例如:

<div id="slider">
    <button class="btn"></button>
    <button class="btn"></button>
    <div class="slider">
        <div class="item"></div>
        <div class="item"></div>
        <div class="item"></div>
        <div class="item"></div>
        <div class="item"></div>
    </div>
</div>
<div id="slider">
    <button class="btn"></button>
    <button class="btn"></button>
    <div class="slider">
        <div class="item"></div>
        <div class="item"></div>
    </div>
</div>

我需要的是能够隐藏小于或等于 4 篇文章的按钮(&lt;div class="item"&gt;&lt;/div&gt;),我尝试了以下方法,但它隐藏了所有按钮,即使是那些超过 5 篇文章的按钮( &lt;div class="item"&gt;&lt;/div&gt;)。

$(".slider").each(function(){
    var numItems = $(this).find("div.item").length;
    if (numItems <= 4) {
        $('button.btn').css('display','none');
    }
});

我需要进行哪些更改才能使其正常工作?

【问题讨论】:

    标签: jquery


    【解决方案1】:

    $('button.btn').css('display','none'); 将隐藏所有按钮。要仅隐藏 4 篇或更少文章的滑块内的按钮,请尝试:

    $(this).find('button.btn').css('display','none');

    解释:$(this).each() 循环中您要到达的滑块开始。然后,.find('button.btn') 仅查找属于该特定滑块的后代的按钮。

    【讨论】:

    • 我知道为什么它对我不起作用,会发生什么是按钮在另一个容器中,我复制了我的问题的错误示例,你能帮我吗jsfiddle.net/e2yk8szx
    • 您有多个&lt;div id="slider"&gt; 实例。 ID 必须是唯一的,因此您需要先进行更改。
    • 我还有一个类似的关于奖励的问题,对我有帮助吗? stackoverflow.com/questions/69052314/…
    猜你喜欢
    • 2013-12-20
    • 1970-01-01
    • 1970-01-01
    • 2018-06-28
    • 1970-01-01
    • 1970-01-01
    • 2017-11-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多