Я использую jQuery на моей странице ASP.NET MVC 2. Это супер простая почта, которая получает дату взамен. Сам процесс выполняется очень быстро. Я хочу использовать изображение с прядильщиком, чтобы показать, что пользователь что-то происходит. Все работает отлично в Firefox, тестируя локально. Однако в IE 8 изображение счетчика не отображается достаточно долго; он просто мерцает. Это может запутать конечного пользователя, если они не видят указания о том, что процесс работает/выполнен. Какой был бы лучший способ исправить эту проблему?jQuery + Ajax + Загрузка Spinner Image = Too Fast!
Спасибо.
<img id="signedout<%: item.Id %>" src="/Content/Images/signed_out.png" alt="Signed Out" title="Signed Out" style="display:none" />
<div id="ajaxloader<%: item.Id %>" style="display:none;text-align:center"><img src="/Content/Images/ajax-loader.gif" alt="loading..." title="loading..." /></div>
<script type="text/javascript">
$(function() {
var id = "<%: item.Id %>";
$("#signout" + id).click(function() {
if (confirm("Are you sure you want to sign this visitor out?")) {
$(this).hide();
//$("#signout" + id).hide();
$("#ajaxloader" + id).show();
var url = '<%: Url.Action("signout") %>';
$.ajax({
type: "POST",
url: url,
data: "id=" + id,
success: function (result) {
$("#timeout" + id).append(result);
$("#ajaxloader" + id).hide();
$("#signedout" + id).show();
$("#row" + id).css("background", "#E8E8E8");
},
error: function() {
alert("There was an unexpected error. Please try again later.");
$("#ajaxloader" + id).hide();
$("#signout" + id).show();
}
});
}
});
});
</script>
Выполняется ли запрос только быстрее в IE8 или прядильщик скрыт до завершения запроса? Если это просто так быстро заканчивается, то в чем проблема? – DLH
Он заканчивается быстрее в IE8, что не является проблемой. Проблема в том, что, так как он так быстро, пользователь не видит загрузку gif и не подумает, что ничего не произошло. – Mike
Я полагаю, что в реальной жизни, когда есть латентность сети, запрос может быть выполнен медленнее? Erm ... –