隐藏div需要重新出现



我有几个产品在一个div中并排排列,我使用这个脚本逐个隐藏。

在某种程度上,他们都消失了,我希望他们都重新出现。我试过一些。节目,但我可能是错误的位置。

可以有人请看看,看看需要做些什么,以获得脚本工作的预期?

<script>
 $(document).ready (function() {
        "$('.add1').each(function(index) {
            setTimeout(function(el) {
                el.hide('slow');
            }, index * 2000, $(this));
        });
    });
</script>

你可以尝试这样做:

$(document).ready (function() {
    var $add1 = $('.add1').each(function(index, el) {
        setTimeout(function() {
            $(el).hide('slow');
        }, index * 2000);
    });
    setTimeout(function() {
        $add1.show('slow');
    }, $add1.length * 2000);
});

也就是说,首先将所有超时排队以隐藏元素,然后将另一个超时排队以再次显示它们。

演示:http://jsfiddle.net/tsuQd/

当然,这同时显示了它们。要一次显示一个,你可以这样做:

$(document).ready (function() {
    var $add1 = $('.add1'),
        count = $add1.length;        
    $add1.each(function(index, el) {
        setTimeout(function() {
            $(el).hide('slow');
        }, index * 2000);
        setTimeout(function() {
            $(el).show('slow');
        }, (count + index) * 2000);
    });
});

演示:http://jsfiddle.net/tsuQd/1/

请注意,我已经调整了您在超时回调中获取元素引用的方式,因为使用setTimeout()的第三个参数在所有浏览器中都不起作用。

相关内容

  • 没有找到相关文章

最新更新