javascript - 如果在最外面的 fadeIn 语句的同一元素上使用嵌套的 fadeOut,为什么它不起作用?

标签 javascript jquery

谁能告诉我为什么这个 $("#opening-first").fadeOut() 行没有执行?

$(document).ready(function(){

  $("#opening-first").fadeIn(1000).delay(1000, function() {
    $("#opening-second").fadeIn(1000, function() {
     $("#opening-first").fadeOut(1000, function() {
      $("#body-overlay").delay(1000).fadeOut(1000);
     });
    });
  });
});

看起来这应该是非常简单的。这是 HTML:

<div id="body-overlay">
  <div class="centered">
      <h1 id="opening-first">My name is Trevor Hinesley.</h1>
          <p class="medium" id="opening-second">And I like creating.</p>
  </div>
</div>

最佳答案

您的代码仅由于第一次延迟而无法工作。您会看到,delay() 的第二个参数应该是队列名称的字符串。您可以通过函数 stop() 或使用“队列”的任何其他方法重用该队列名称,但这并不重要,因为这不是您在这里所做的。

如果您想延迟第二次淡入,您的代码应如下所示:

$("#opening-first").fadeIn(1000, function() {
    $("#opening-second").delay(1000).fadeIn(1000, function() {
        $("#opening-first").fadeOut(1000, function() {
            $("#body-overlay").delay(1000).fadeOut(1000);
        });
    });
});

fiddle :http://jsfiddle.net/rk4Bz/

关于javascript - 如果在最外面的 fadeIn 语句的同一元素上使用嵌套的 fadeOut,为什么它不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16599225/

相关文章:

php - 从 PHP 设置 JavaScript 变量

javascript - 即使使用 setTimeout 也无法在同一 block 中重新打开子窗口

javascript - 基于 category_id 的循环大小

jquery - 从远 Angular 动画宽度/高度

javascript - 使用 jquery 或 javascript 以 csv 格式导出表的选定行数据

javascript - 我基于相同的数组在另一个循环中迭代一个循环,忽略重复项的最佳方法是什么?

javascript - 如何将幻灯片选择器点放在图像顶部?

javascript - 为什么我需要使用函数作为参数而不能只使用它返回的值

jquery - 为什么我的 jquery 警报仅在单击 firebug persist 时才起作用?

javascript - requestanimationframe() 中的函数调用了太多次,如何只调用一次?