依次淡化儿童

时间:2014-12-24 19:15:18

标签: javascript jquery html delay fadein

我试图让列表中的每个元素按顺序淡入淡出。我知道有很多类似的问题,但我似乎无法找出什么错误!这是我的代码:

jQuery(function ($) {
    $('li.menu-item-type-custom').click(function () {
        $(this).siblings().find('ul.sub-menu').hide();
        $(this).children('ul.sub-menu').each(function(index) {
            $(this).delay(300*(index)).fadeTo(1000,1); 
        });
    });
});

编辑: 它没有顺序进入。 以下是我正在使用的DOM:http://jsfiddle.net/m0vxjqsj/2/

1 个答案:

答案 0 :(得分:2)

问题是当你想要淡化子菜单中的li时,你试图淡入子菜单......我在{{.children()之前添加了.hide() 1}}之前和.each() ...

之前

我相信这就是你想要的......

JSFiddle

$('li.menu-item-type-custom').click(function () {

    $(this).siblings().find('ul.sub-menu').children().hide();

    $(this).children('ul.sub-menu').children().each(function (index) {
        $(this).delay(300 * (index)).fadeTo(1000, 1);
    });
});