Xin lỗi nếu điều này là đơn giản; Tôi mới sử dụng JQuery. Tôi đã tìm kiếm và tìm thấy các câu hỏi như this, nhưng chúng dường như không trả lời câu hỏi của tôi.Thực hiện thao tác trên nút dừng trình duyệt, nhấp vào
Tôi đang sử dụng JQuery để hiển thị một chỉ báo tiến độ câm cho những hành động mà phải mất một thời gian dài:
$(document).ready(function() {
$('form').submit(function() {
$('#progress').show();
});
});
Khi người dùng nhấp vào một nút hình thức, tôi chỉ hiển thị một div với một gif động. Div này hiển thị trong phần còn lại của trang hiển thị. Sau khi hành động của biểu mẫu hoàn tất, một trang mới sẽ tải.
Tính năng này hoạt động tốt, nhưng điều gì sẽ xảy ra nếu người dùng nhấp "ngừng" trong trình duyệt trước khi tác vụ hoàn tất? Làm thế nào tôi có thể làm cho div biến mất? Có cách nào để bắt sự kiện này hay không, có cách nào tốt hơn để xử lý toàn bộ tình huống không?
Cảm ơn sự giúp đỡ của bạn.
Nó không chắc bạn có thể chụp sự kiện đó. Nhưng cách tốt hơn là gửi dữ liệu biểu mẫu của bạn bằng AJAX. Có lẽ [kiểm tra điều này] (http://stackoverflow.com/questions/1960240/jquery-ajax-submit-form) – musefan
Có sự kiện "dừng", không phải là trình duyệt chéo và không đáng tin cậy lắm. – Xotic750
Bạn có thể chọn div và xóa nó không? Một cái gì đó như: '$ ('# progress'). Remove()' sẽ lấy nó ra khỏi DOM. Nó sẽ không dừng lại bất cứ hành động nào đang xảy ra. Làm như vậy sẽ yêu cầu các hành động khác dựa trên cách bạn đang chạy hành động. – ckersch