下面的代码有效,但不能正常工作的是延迟进程,因为我不知道process.php需要多长时间才能响应。它总是不同的。没有确定的时间。
下面的代码可以像这样工作(除了错误的延迟):
- 当我点击运行图标时,运行图标应该会消失,加载器图标应该会慢慢出现。
- 来自process.php的响应后,加载器图标应该会慢慢消失,成功/失败图标会慢慢出现。如果成功的话,紧接着next ( div ) 应该会慢慢出现。
谢谢
$(document).ready(function()
{
$("#run").click(function(event)
{
$('#run').hide();
$('#loader').fadeIn(1000).delay(1000);
$.ajax(
{
type : 'POST',
url : 'process.php',
data : 'user=jolly',
dataType : 'json',
success : function(response)
{
if(response.status == 'success')
{
$('#loader').delay(1000).fadeOut();
$('#success').delay(4000).fadeIn(1000);
$('#next').delay(4500).fadeIn(1000);
}
else
{
$('#loader').delay(1000).fadeOut();
$('#fail').delay(4000).fadeIn(1000);
$('#next').delay(4500).fadeIn(1000);
}
}
});
});
});
<div id="first">
<img id="run" src="run.png" />
<img id="loader" src="loader.png" style="display:none;" />
<img id="success" src="success.png" style="display:none;" />
<img id="fail" src="fail.png" style="display:none;" />
</div>
<div id="next" style="display:none;">
....
....
</div>