【问题标题】:How to show each div, one by one on jquery?如何在jquery上一一显示每个div?
【发布时间】:2010-01-31 20:41:10
【问题描述】:

嘿,我不想在我的页面上制作很酷的效果,我在想,如何在加载时隐藏所有内容并逐个显示每个 div 效果? 如果这是一个坏主意,你能帮我一个更好的主意吗?

编辑:使用 $("div").each() jQuery 函数。 EDIT2:孩子们的孩子。

EDIT3:

<div id="loader"><table cellpadding="0" cellspacing="0" width="100%" height="100%"><tr><td><img src='/assets/images/ajax-loader.gif' border=0 alt=""><br><br>A carregar, aguarde...</td></tr></table></div>

    <!-- start #menu -->
    <div class="wrapper" id="menu">
        <div class="center_div">
            <h1 class="logo"><a href="/pagprincipal" title="Microdual">Microdual</a></h1>
            <ul class="sf-menu"><li class="active"><a href="empresa/perfil" title="Empresa" ><span class="menuicon" id="empresa"></span>Empresa</a><ul><li class="active"><a href="/empresa/perfil" title="Perfil" >Perfil</a></li>
<li><a href="/empresa/politica-qualidade" title="Política de Qualidade" >Política de Qualidade</a></li>
<li><a href="/empresa/novidades" title="Novidades" >Novidades</a></li>

<li><a href="/empresa/portfolio" title="Portfólio" >Portfólio</a></li>
<li class="last"><a href="/empresa/contactos" title="Contactos" >Contactos</a></li>
</ul></li>
<li><a href="/produtos" title="Produtos" ><span class="menuicon" id="produtos"></span>Produtos</a><ul><li><a href="/produtos/alojamento-web" title="Alojamento Web" >Alojamento Web</a></li>
</ul></li>
<li><a href="/servicos" title="Serviços" ><span class="menuicon" id="servicos"></span>Serviços</a><ul><li><a href="/servicos/assistencia-tecnica" title="Assistência Técnica" >Assistência Técnica</a></li>
</ul></li>
<li class="last"><a href="/suporte" title="Suporte" ><span class="menuicon" id="suporte"></span>Suporte</a><ul><li><a href="/suporte/suporte-empresas" title="Suporte Técnico Empresas" >Suporte Empresas</a></li>
<li><a href="/suporte/suporte-home" title="Suporte Técnico Home" >Suporte Home</a></li>

<li><a href="/suporte/suporte-tecnico-web" title="Suporte Técnico Web" >Suporte Web</a></li>
<li class="last"><a href="/suporte/area-de-downloads" title="Área de Downloads" >Área de Downloads</a></li>
</ul></li>
</ul>
        </div>
    </div>
    <!-- end #menu -->

<!-- start #main -->
    <div class="wrapper" id="header_page">
        <div class="center_div">

            <div id="right">
<p style="text-align: center;"><img src="assets/images/perfil-top.jpg" alt="" width="590" height="200" /></p>
<h3>A Nossa Miss&atilde;o</h3>
<p>A Microdual tem a miss&atilde;o de desenvolver solu&ccedil;&otilde;es tecnol&oacute;gicas inovadoras,
que permitam satisfazer todas as necessidades dos clientes, parceiros e
empresas, atrav&eacute;s de produtos e servi&ccedil;os de elevada qualidade, que os tornam
mais eficientes. </p>
<h3>A Nossa Vis&atilde;o</h3>
<p>Acreditamos
que atrav&eacute;s da inova&ccedil;&atilde;o tecnol&oacute;gica actual iremos encontrar as solu&ccedil;&otilde;es
necess&aacute;rias para enfrentar os desafios do futuro. Da tecnologia adv&eacute;m a
oportunidade para as empresas crescerem, para os cidad&atilde;os em mercados
emergentes prosperarem entrando na Economia digital, e para as pessoas adaptarem
novas possibilidades.</p>

<h3>Os Nossos Valores</h3>
<p>A nossa conduta deve refletir os mais altos padr&otilde;es de &eacute;tica;<br />A nossa comunica&ccedil;&atilde;o deve ser clara e precisa;<br />O nosso gerenciamento deve ser em equipa, consistente e focado;<br />O nosso relacionamento com clientes e colaboradores deve ser transparente e baseado na responsabilidade e confian&ccedil;a entre as partes.</p>
<ul class="post_list">
</ul>
<h3>O Nossos Objetivo</h3>
<p>Melhorar continuamente o que fazemos, para assim contribuir
para o desenvolvimento sustent&aacute;vel, acrescentando vantagem competitiva.</p>

            </div>
            <div id="left">
<ul class="sf-submenu"><li class="active"><a href="/empresa/perfil" title="Perfil" >Perfil</a></li>
<li><a href="/empresa/politica-qualidade" title="Política de Qualidade" >Política de Qualidade</a></li>
<li><a href="/empresa/novidades" title="Novidades" >Novidades</a></li>
<li><a href="/empresa/portfolio" title="Portfólio" >Portfólio</a></li>
<li class="last"><a href="/empresa/contactos" title="Contactos" >Contactos</a></li>
</ul>
            </div>

        </div>
    </div>
    <!-- end #main -->



    <!-- start #footer -->
    <div class="wrapper" id="footer">
            <div id="footer_contents">
                <p>©Microdual 2010 - <a href="empresa/termos-e-condicoes-utilizacao" title="">Termos de Utilização</a> - <a href="empresa/politica-privacidade" title="">Privacidade</a> - <a href="empresa/compatibilidade-do-website" title="">Compatibilidade</a> - <a href="mapasite" title="">Mapa do Site</a> - <a href="empresa/contactos" title="">Contactos</a>  |</p>

                <ul>
                    <li><a href="#" title=""><img src="/assets/templates/default/img/network_icons/feed.gif" alt="Feed" /></a></li>
                    <li><a href="#" title=""><img src="/assets/templates/default/img/network_icons/twitter.gif" alt="Twitter" /></a></li>
                    <li><a href="#" title=""><img src="/assets/templates/default/img/network_icons/facebook.gif" alt="Facebook" /></a></li>
                </ul>
                <form action="" method="get">
                    <div>
                        <input class="input_search" name="search_field"  type="text">
                        <input value="Procurar" class="button_search" type="submit">

                    </div>
                </form>
            </div>
    </div>

谢谢大家 何塞·莫雷拉

【问题讨论】:

  • 你能发布一些相同的结构吗?

标签: jquery effects


【解决方案1】:

你可以这样使用:

$(function() {
    // Start showing the divs
    showDiv();
});

function showDiv() {
    // If there are hidden divs left
    if($('div:hidden').length) {
        // Fade the first of them in
        $('div:hidden:first').fadeIn();
        // And wait one second before fading in the next one
        setTimeout(showDiv, 1000);
    }
}

找到下一个隐藏的 div 并在每一秒内将其淡化。只需事先使用 CSS 的 display: none; 隐藏要显示的 div。


如果你因为一些奇怪的原因不得不使用each 函数,这可能会起作用.. 有点。

$(function() {
    $('div:hidden').each(function(index) {
        setTimeout(function(el) {
            el.fadeIn();
        }, index * 1000, $(this));
    });
});

【讨论】:

  • 喜欢这个 :D 你可以使用 $.each() jQuery 函数吗?
  • 如果这行得通,为什么你必须使用each 函数?您也可以在 showDiv 函数内的 each 循环中做所有可以做的事情。 Each 只会让事情复杂化。
  • 我知道如何使用每个功能,但我不能这样做,因为我需要一个个孩子来做,我不知道该怎么做。谢谢你的回答:D
  • 我必须使用 each 来按子进程执行子进程,例如,我们在另一个 div 内部的 div 中有一个 div,我不想按顺序制作。感谢同情
  • 它 ($('div:hidden:first').fadeIn(500, showDiv);) 甚至可以是 showDiv 函数中的唯一行。
【解决方案2】:

或者你可以使用这个插件:https://github.com/Devlart/Jquery-AnimateOnebyOne

【讨论】:

  • 您应该提供更多信息,而不仅仅是一个链接,以防有一天链接失效或被误导。
【解决方案3】:

尝试下一个代码:

$('div').hide().each(function(index, domElement) {
      $(this).slideDown("slow");
      // Wait for the end of the animation somehow...
    })

【讨论】:

  • 它同时做所有的div,不做children by children效果。谢谢你的回答。
  • 我知道。这就是我写// Wait for the end of the animation somehow... 行的原因。我为您提供了 jquery(主要部分) - 现在添加您的 JS,等待每个 div 出现后等待半秒...
  • 我看到 JS 中的等待/睡眠是不可能的。它给我们留下了公认的答案。请注意我对该答案的补充...
猜你喜欢
  • 1970-01-01
  • 2013-03-14
  • 1970-01-01
  • 2017-08-15
  • 2011-08-03
  • 1970-01-01
  • 2015-05-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多