如何使用JQuery将没有特定类的元素设置为隐藏?

如何使用JQuery将没有特定类的元素设置为隐藏?,jquery,addclass,Jquery,Addclass,我在一页上有几个div,都是“article”类的 要将类“current”添加到具有类“article”的第一个div,我希望所有其他class=“article”div都被隐藏,直到单击按钮为止 加载页面时,第一个class=“article”div应该可见。单击按钮时,应显示第二个div,依此类推 编辑:class=“article”div出现在两个不同类别的div中是否重要 <div class="roots"> <div class="article">

我在一页上有几个div,都是“article”类的

要将类“current”添加到具有类“article”的第一个div,我希望所有其他class=“article”div都被隐藏,直到单击按钮为止

加载页面时,第一个class=“article”div应该可见。单击按钮时,应显示第二个div,依此类推

编辑:class=“article”div出现在两个不同类别的div中是否重要

<div class="roots">
   <div class="article">
   </div>
</div>
<div class="words">
   <div class="article">
   </div>
</div>


我是否需要在JQuery中以不同的方式处理它们?

您可以仅设置此JQuery中显示的第一个对象的初始状态:

$(document).ready(function() {
    $(".article").hide();  // hide them all
    $(".article:first").show().addClass("current");  // show first one and add class
});
尽管如此,我个人不会在初始状态中使用JS,因为它们的元素可能会在JS运行之前短暂地显示出来,并且看起来可能不那么干净。默认情况下,最好使用CSS隐藏
.article

.article {display: none;}
然后运行此初始javascript以显示第一个类并添加当前类:

$(document).ready(function() {
    $(".article:first").show().addClass("current");  // show first one and add class+
});
然后,按下按钮,显示下一个隐藏的按钮,您可以执行以下操作:

$("#showButton").click(function() {
    $(".article:hidden:first").show();
});

您可以在这里看到一个这样的工作示例:。

您可以仅设置使用此jQuery显示的第一个的初始状态:

$(document).ready(function() {
    $(".article").hide();  // hide them all
    $(".article:first").show().addClass("current");  // show first one and add class
});
尽管如此,我个人不会在初始状态中使用JS,因为它们的元素可能会在JS运行之前短暂地显示出来,并且看起来可能不那么干净。默认情况下,最好使用CSS隐藏
.article

.article {display: none;}
然后运行此初始javascript以显示第一个类并添加当前类:

$(document).ready(function() {
    $(".article:first").show().addClass("current");  // show first one and add class+
});
然后,按下按钮,显示下一个隐藏的按钮,您可以执行以下操作:

$("#showButton").click(function() {
    $(".article:hidden:first").show();
});
您可以在此处看到一个工作示例:


要隐藏除第一篇文章以外的所有文章,请尝试以下操作:

$(".article").not(":first").hide();
要隐藏所有没有当前类的帖子,请使用以下命令:

$(".article").not(".current").hide();
要在单击按钮时逐个显示每篇文章,请使用此选择器:

$(".article.current:hidden").first().show();

有关
:hidden
选择器的详细信息,可以找到。

要隐藏除第一篇文章以外的所有文章,请尝试以下操作:

$(".article").not(":first").hide();
要隐藏所有没有当前类的帖子,请使用以下命令:

$(".article").not(".current").hide();
要在单击按钮时逐个显示每篇文章,请使用此选择器:

$(".article.current:hidden").first().show();

有关
:hidden
选择器的详细信息,可以找到。

在显示第一个选择器之前,是否需要先将它们全部隐藏?需要吗?另外,要显示后续的div,我会使用$(“.article:next”)还是类似的东西?如果它们最初都是可见的,那么您需要隐藏所有不希望可见的div,并且隐藏所有div最简单、最快,然后显示其中一个div。看看我最近在我的答案中添加了什么,我认为使用CSS和JS的组合是一种更好的方法。我喜欢你在点击功能中所做的。我想在你添加内容之前我已经对它进行了评论。代码的最后一位表示第一个隐藏的div,yes?yes,
”。article:hidden:first“
是class=“article”的第一个隐藏元素。我已经更新了JSFIDLE,以显示将.current类移动到新显示的文章中。你肯定应该看看JSFIDLE中的代码,因为你可以在一个窗口中看到HTML、JS、CSS和输出,这对学习和实验非常有用。在第一个窗口可见之前,我需要先隐藏它们吗?需要吗?另外,要显示后续的div,我会使用$(“.article:next”)还是类似的东西?如果它们最初都是可见的,那么您需要隐藏所有不希望可见的div,并且隐藏所有div最简单、最快,然后显示其中一个div。看看我最近在我的答案中添加了什么,我认为使用CSS和JS的组合是一种更好的方法。我喜欢你在点击功能中所做的。我想在你添加内容之前我已经对它进行了评论。代码的最后一位表示第一个隐藏的div,yes?yes,
”。article:hidden:first“
是class=“article”的第一个隐藏元素。我已经更新了JSFIDLE,以显示将.current类移动到新显示的文章中。您肯定应该查看JSFIDLE中的代码,因为您可以在一个窗口中看到HTML、JS、CSS和输出,这对学习和实验非常有用。