2011-10-11 113 views
1

基本上,我的网页上的图像称为添加“活动指示器”来div#imagebox。但有时图像很大,可能需要一段时间才能加载,特别是如果尚未加载到高速缓存中。我想给用户一些通知,说明请求正在处理中。我想我可以用跳动器做到这一点。我想要在div#imagebox中显示跳动者,直到图像准备就绪。然后,我希望这个悸动者消失。你能帮助我在执行功能时,此功能AJAX

我已经看了http://plugins.jquery.com/project/throbber这个页面,但我真的不明白我应该做的。

我能添加类似$("div#imagebox").throbberShow(true);到现有的功能(见下文?),但我哪里会增加吗?我是否需要参数true

感谢您的帮助。

function showImage(ms, pid)  
{ 
    $.get("../msimages/image.php", {ms: ms, pid: pid}, function(txt)   
    {   
     $("div#imagebox").html(txt);  
    }); 
} 
+0

永远不要做'$( '#DIV imagebox')'。这比'$('#imagebox')'慢很多*。 –

+0

好 - 我不知道。我总是把div前缀​​放在那里。我会停止这样做:) – Jeff

+0

好人。传播这个词。 –

回答

0

在你的情况下,它看起来像你会添加它如下。我不相信真正的参数是必要的:

function showImage(ms, pid)  
{ 
    $.throbberShow({ajax: true, parent: imagebox); // add this line. 
    $.get("../msimages/image.php", {ms: ms, pid: pid}, function(txt)   
    {   
     $("div#imagebox").html(txt);  
    }); 
} 

应该的图像加载到#imagebox,当AJAX加载完成,就应该重写无论是在那里。

+0

好吧,我会试试看 - 我还可以问:jQuery库中是否有内置的跳动图像?脚本如何知道从哪里获得动画? – Jeff

+0

它似乎使用了throbber.gif,如果它位于正确的位置,它默认处于下载状态,但它表明您可以在样本中指定自己的图像。 –

+0

由于我没有足够的代表 - 我不能回答我自己的问题 - 但经过一些工作后,我发现你给出的答案需要稍作修改。 $ .throbberShow({AJAX:真实,父:imagebox}); 'ajax:true'参数不需要在那里,因为它是默认的,但'parent:imagebox'参数**是关键** 我的主要问题是试图使用ajax目标' div'作为选择器 - 当它需要成为'throbberShow'的选项参数之一时。 我花了一段时间才弄清楚。 – Jeff