【问题标题】:jquery fadeout, load, fadeinjquery淡出,加载,淡入
【发布时间】:2010-04-30 15:06:20
【问题描述】:

我正在使用 JQuery,我想要发生的事情是。

Div 使用 fadeOut 命令淡出。然后它使用 load 命令从 url 加载内容。然后,一旦加载内容,它就会使用 fadeIn 命令淡入。

我的代码是:

$("#myDiv").fadeOut().load('www.someurl.com').fadeIn()

但是这不起作用。它有点闪烁然后加载然后加载。我认为问题是在加载完成之前就发生了衰落。

我该怎么办

谢谢

【问题讨论】:

    标签: jquery jquery-effects


    【解决方案1】:

    你可以像这样使用load()回调函数:

    $("#myDiv").fadeOut().load("www.someurl.com", function(response, status, xhr) {
        $(this).fadeIn();
    });
    

    您可能想使用 load() 调用的状态来查看是否一切都已正确完成。

    $("#myDiv").fadeOut().load("www.someurl.com", function(response, status, xhr) {
        if (status == "error") {
            // handle error
        }
        else
        {
            $(this).fadeIn();
        }
    });
    

    【讨论】:

    • 这是因为“加载”是异步的,其他操作将继续工作吗?您的答案将在加载报告完成后等待调用“fadeIn”,对吗?
    【解决方案2】:
    $("#myDiv").fadeOut(1000, function () {
        $("#myDiv").load("www.someurl.com", {limit: 25}, function(){
            $("#myDiv").fadeIn();
        });
    });
    

    限制指定在负载调用中等待应答的时间长度

    【讨论】:

      【解决方案3】:

      对.load() 使用success 回调,如下所示:

      $("#myDiv").fadeOut().load('www.someurl.com', function() {
        $(this).fadeIn();
      });
      

      【讨论】:

        【解决方案4】:

        由于 AJAX 的异步特性,您需要在加载回调函数中进行淡入淡出。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-03-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-12-22
          • 2023-03-27
          相关资源
          最近更新 更多