【问题标题】:Show loading GIF in jQuery without AJAX?在没有 AJAX 的情况下在 jQuery 中显示加载 GIF?
【发布时间】:2011-04-17 15:58:44
【问题描述】:

我知道如何使用

$(gif).show(); 
$.post( action, data, function(result) { $(gif).hide(); } );

// using ajaxStart and ajaxStop is a better way too

但是,不使用post我不知道怎么做,我试过了

$(gif).show();
doAction();    // No post...
$(gif).hide();

问题是,虽然 doAction 函数正在运行,但 $(gif) 不可见....我也尝试过超时,但问题是取决于doAction() 持续时间...

【问题讨论】:

  • 如果您告诉我们doAction() 是什么,它真的会有所帮助。
  • doAction() 做任何事情...例如,在元素列表中搜索

标签: javascript jquery timeout loading gif


【解决方案1】:

如果doAction() 所做的任何事情都是同步的,那应该可以。

如果不是,那么您将需要在操作(无论它是什么)完成时触发的回调中调用 hide 方法。

【讨论】:

    【解决方案2】:

    $(gif).hide() 可以在你的 doaction 执行一些 ajax 调用(搜索)时触发,例如,这需要时间。

    将隐藏函数放在函数(结果)之后的目的是只有在您的 ajax 调用返回结果时才调用它。

    如果您不想依赖 ajax complete 来显示或隐藏您的加载器,您可以将结果放在覆盖加载器的 DIV 层上。 (更高的 z-index)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-03-02
      • 1970-01-01
      • 2013-01-06
      • 2014-07-26
      • 1970-01-01
      • 2015-12-22
      • 2011-05-03
      相关资源
      最近更新 更多