Javascript jquery淡出不工作-更新

Javascript jquery淡出不工作-更新,javascript,jquery,Javascript,Jquery,我的意思是我想使用for循环或其他东西手动迭代。但我提出的这段代码似乎不起作用。我喜欢将javascript与jquery结合起来,因为jquery不是我喜欢的大型项目。我对jquery也不太了解,不过我想说我已经开始学习了。如何在jquery中迭代节点列表是我这次向所有jquery粉丝提出的问题。它与javascript的方式类似吗?不管怎样,这就是我想出的(初学者的代码) 这是代码//不工作 $(".sn").[0].fadeOut(); $(".sn").[0].fadeOut("slow

我的意思是我想使用for循环或其他东西手动迭代。但我提出的这段代码似乎不起作用。我喜欢将javascript与jquery结合起来,因为jquery不是我喜欢的大型项目。我对jquery也不太了解,不过我想说我已经开始学习了。如何在jquery中迭代节点列表是我这次向所有jquery粉丝提出的问题。它与javascript的方式类似吗?不管怎样,这就是我想出的(初学者的代码)

这是代码//不工作

$(".sn").[0].fadeOut();
$(".sn").[0].fadeOut("slow");
$(".sn").[0].fadeOut(3000);

        <div class="sn">
            content
        </div>
        <div class="sn sn-2">
            content
        </div>
        <div class="sn sn-3">
            content
        </div>
$(“.sn”)[0].fadeOut();
$(“.sn”)[0]。淡出(“慢”);
$(“.sn”)[0]。衰减(3000);
所容纳之物
所容纳之物
所容纳之物

但是美元(“.sn-2”).fadeOut();工作起来很有魅力。为什么?

在代码中,您尝试三次淡出.sn div。 请尝试以下操作:

$.each($('.sn'), function(i, obj) { 
    $('.sn:eq(' + i + ')').fadeOut(3000); 
});

通过这种方式,您将迭代所有.sn类元素,并通过其索引(:eq(i))将它们逐个淡出。也许您正在寻找类似的内容? 它将淡出循环中的每个sn元素

我还更新了html,使其更加一致

   for(var i=0; i < $(".sn").length; i+=1){
        $(".sn-"+[i]).fadeOut(3000);
   }
for(变量i=0;i<$(“.sn”).length;i+=1){
$(“.sn-”+[i])。衰减(3000);
}
HTML

内容
所容纳之物
所容纳之物
此外,您还需要知道,
$(“.sn”)
表示一个对象,该对象没有您试图用代码访问的任何属性[0]($(“.sn”)[0]) 因此,要实现这一点,您必须访问任何事件(如$(“.sn”)[0]要触发的元素

最好试试这个

$(".sn:first").fadeOut();

您也可以尝试以下方法:

for(var i=0; i < $(".sn").length; i+=1){
        $(".sn").eq(i).fadeOut(3000);
   }
for(变量i=0;i<$(“.sn”).length;i+=1){
$(“.sn”).eq(i).fadeOut(3000);
}

不,为什么你不能帮忙。我从来没有说过我喜欢他?可能重复的问我如果有任何问题为什么你不只是使用每种方法?它根据条件工作,而不是每个元素。但这只对一个元素有效?我想使用
i
$进行迭代。每个($('.sn'),函数(i,obj){$('.sn')[i].fadeOut(3000);})为什么不
$(“.sn”)[0].fadeOut()
$(“.sn-2”).fadeOut()时工作是否?
$.each($('.sn'),函数(i,obj){$('.sn:eq('+i+'))).fadeOut(3000);})jain,如何使用i进行迭代?
$(".sn:first").fadeOut();
for(var i=0; i < $(".sn").length; i+=1){
        $(".sn").eq(i).fadeOut(3000);
   }