6

抱歉,如果这太简单了;我是 JQuery 的新手。我已经搜索并找到了这样的问题但他们似乎并没有完全回答我的问题。

我正在使用 JQuery 为需要很长时间的操作显示一个愚蠢的进度指示器:

$(document).ready(function() {
    $('form').submit(function() {
        $('#progress').show();
    });
});

当用户单击表单按钮时,我只显示一个带有动画 gif 的 div。此 div 在页面可见的其余时间可见。表单操作完成后,将加载一个新页面。

这很好用,但是如果用户在操作完成之前点击浏览器中的“停止”会怎样?如何让 div 消失?有没有办法捕捉到这个事件,或者有没有更好的方法来处理整个情况?

谢谢你的帮助。

4

1 回答 1

0

您可以使用“onstop”事件来处理这个问题,但它只适用于 IE。我认为您无法为其他浏览器处理此类事件。

您可以尝试在小超时后使进度对话框消失:

$('form').submit(function() {
    $('#progress').show();
    setTimeout(function(){
             $('#progress').hide();  
    },3000);
});
于 2013-04-25T13:33:48.313 回答