jQuery .delay()不会延迟.html()函数

Der*_*air 27 jquery jquery-animate

我正在尝试做一个小的javascript技巧来淡出div,替换它的内容,然后淡入它..html事件正在fadeOut完成之前替换内容...

$("#products").fadeOut(500)
              .delay(600)
              .html($("#productPage" + pageNum).html())
              .fadeIn(500);
Run Code Online (Sandbox Code Playgroud)

显示的是,.html()没有被延迟的.delay()方法.

kar*_*m79 41

delayqueue像这样使用时,将适用于您的情况:

$("#products").fadeOut(500)
    .delay(600)
    .queue(function(n) {
        $(this).html("hahahhaha");
        n();
    }).fadeIn(500);?
Run Code Online (Sandbox Code Playgroud)

在这里试试:http://jsfiddle.net/n7j8Y/

  • `n()`代表'下一个队列项',根据[**队列**上的文档](http://api.jquery.com/queue/),这个项目出列并触发下一个动画项目. (3认同)