Przeprosiny, jeśli jest to uproszczone; Jestem nowy w JQuery. Szukałem i znalazłem pytania takie jak this, ale nie odpowiadają one w pełni na moje pytanie.Wykonaj akcję na przycisku zatrzymania przeglądarki kliknij przycisk
używam jQuery pokazać niemego wskaźnik postępu dla działań, które mają długi czas:
$(document).ready(function() {
$('form').submit(function() {
$('#progress').show();
});
});
Gdy użytkownik kliknie przycisk formularz, po prostu pokazać div z animowanym GIF. Ten element div jest widoczny przez resztę czasu, gdy strona jest widoczna. Po zakończeniu działania formularza zostanie załadowana nowa strona.
Działa to dobrze, ale co zrobić, jeśli użytkownik kliknie "zatrzymaj" w przeglądarce przed zakończeniem działania? Jak mogę sprawić, by div zniknął? Czy istnieje sposób, aby złapać to wydarzenie, czy istnieje lepszy sposób radzenia sobie z całą sytuacją?
Dzięki za pomoc.
Jest mało prawdopodobne, można zrobić to wydarzenie. Ale lepszym sposobem byłoby przesłanie danych formularza za pomocą AJAX. Być może [sprawdź to] (http://stackoverflow.com/questions/1960240/jquery-ajax-submit-form) – musefan
Istnieje zdarzenie "onstop", nie jest ono obsługiwane przez wiele przeglądarek i nie jest niezawodne. – Xotic750
Czy możesz po prostu wybrać div i go usunąć? Coś jak: '$ ('# progress'). Remove()' usuwa to z DOM. Nie zatrzyma to, co się dzieje. Takie działanie wymagałoby innych działań w zależności od tego, jak prowadzisz akcję. – ckersch