Jak pokazywać spinnera Ajax na konkretnej stronie?
Mam problemy pokazujące mój spinner ajax. Teraz testuję to na moimlocalhost:3000/test
z następującym kodem:
Klikam link, aby wyświetlić program ładujący (kod Ruby on Rails):
<li><%= link_to "New Test", new_test_path, :remote => true %></li>
Mamdiv
ładowarka powinna pojawić się wewnątrz:
<div id="generate-add-form">
<div class="ajax-loader"></div>
</div>
Wtedy moje funkcje, aby się pojawiły:
jQuery( function($) {
$('#generate-add-form').ajaxStart( function() {
$(this).children('.ajax-loader').show();
});
$('#generate-add-form').ajaxStop( function() {
$(this).children('.ajax-loader').hide();
});
});
Last is my css (niektóre rzeczy skomentowane, aby sprawdzić, czy są potrzebne, czy nie):
.ajax-loader {
display: none;
/*position: fixed;*/
z-index: 1000;
/*top: -13em;
left: 6em;*/
background:url('ajax-loader.gif') 50% 50% no-repeat;
}
body.loading {
overflow: hidden;
}
body.loading .ajax-loader {
display: block;
}
Dlaczego, gdy klikam link, którego nie pokazuje?
EDYTOWAĆ:
<li><%= link_to "Test", new_test_path, :class => "add-link", :remote => true %></li>
<li><%= link_to "Study Guide", new_study_guide_path, :class => "add-link", :remote => true %></li>
$('#generate-add-form').children('.ajax-loader').hide();
$('.add-link').click( function() {
$('#generate-add-form').children('.ajax-loader').show();
});
Najpierw chowam spinner, a potem ponownie go klikam. Co w międzyczasie, kiedy przełączasz się na inny link?