Jquery 动画GIF不';t在显示后开始设置动画

Jquery 动画GIF不';t在显示后开始设置动画,jquery,css,asp.net,animated-gif,Jquery,Css,Asp.net,Animated Gif,我正在尝试在单击按钮后显示动画GIF。图像显示正确,但不会开始设置动画。我尝试了很多技术(用div、SetTimeOut等包装),但都无法在笔记本电脑和移动设备上显示动画GIF。有些技术适用于笔记本电脑,但不适用于移动设备,例如在javascript中设置超时。这是代码。如何使其同时适用于笔记本电脑和移动设备: <script> function AnimateGif() { $("#anim_upload").css("display", ""); } &l

我正在尝试在单击按钮后显示动画GIF。图像显示正确,但不会开始设置动画。我尝试了很多技术(用div、SetTimeOut等包装),但都无法在笔记本电脑和移动设备上显示动画GIF。有些技术适用于笔记本电脑,但不适用于移动设备,例如在javascript中设置超时。这是代码。如何使其同时适用于笔记本电脑和移动设备:

<script>
function AnimateGif() 
{           
$("#anim_upload").css("display", "");
}
</script>

<asp:ImageButton CssClass="uploadedFile_btn" runat="server" ImageUrl="icon-upload2.png" ID="uploadedFile" OnClick="Button1_Click1" OnClientClick="AnimateGif();"/></div>

<img alt="" src="anim_upload.gif" id="anim_upload" style="display:none" />

函数AnimateGif()
{           
$(“动画上传”).css(“显示”,“动画上传”);
}
笔记本电脑解决方案

以下内容在笔记本电脑上运行良好,但在大多数移动设备上似乎不起作用。想知道为什么

<script>
function AnimateGif() 
{           
setTimeout('document.getElementById("anim_upload").style.display = "block"', 200);    
}
</script>

函数AnimateGif()
{           
setTimeout('document.getElementById(“动画上传”).style.display=“block”,200);
}

您正在使用
asp:ImageButton
并使用
OnClientClick
来处理
js
调用,因此当单击此按钮时,显然会调用
js
,但同时页面会被发回(刷新)。所以,当页面刷新时,gif不会产生动画(我可以说这是浏览器的问题,请阅读此-)。因此,如果要使其正常工作,您需要从
js
call-use-following返回false

OnClientClick=“return AnimateGif();”
--在aspx代码中

在javascript代码中:

function AnimateGif() 
{           
   $("#anim_upload").css("display", "block");
   return false;
}

你说得有道理,但在我的例子中,我使用的是asp.net文件上载,我希望在文件上载到服务器时以及页面发回之前显示动画GIF。有时,如果文件很大,这种延迟是相当大的…对于大文件(我猜会超过20MB的文件),如果延迟的时间更长,那么它应该动画,如果在这期间没有动画,让我知道。我测试了你的代码。GIF开始在笔记本电脑和移动设备上制作动画,但页面未发回,这意味着文件未上载。display=block没有帮助。。。。jQuery中是否存在SetTimeOut的等效项?@Gloria,jQuery使用相同的
SetTimeOut
,但您肯定可以尝试其他
jQuery加载程序来上传文件。但是当我尝试同样的gif动画时,我不知道为什么在你的情况下它不起作用。