1

下面的代码是简单的 jquery 进度条。有没有办法在 ajaxStart 上动态更新进度值(现在是 67 仪式)并在 ajaxStop() 上将此值达到 100?

<head><script src="http://code.jquery.com/jquery-1.9.1.js"></script>
    <script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
    <link rel="stylesheet" href="/resources/demos/style.css" />



    <script>
        $(function() {
            $( "#progressbar" ).progressbar({
                **value: 67**
            });
        });
    </script>
</head>


 <body>
    <div id="progressbar"></div>
</body>
4

1 回答 1

2

如果您仅针对 HTML5 浏览器,请尝试此处描述的内容:HTML5 中的 Jquery Ajax Progress

解决这个问题的传统方法是显示一个旋转的 gif,而不是加载程序。

在大多数情况下,Ajax 请求不会太长,因此尝试相同的所有努力都会丢失。

然而,显示进度条的情况并不少见。问题是,较旧的浏览器没有与 JS 共享此信息,开发人员只能使用诸如,

  • 使用闪光灯的帮助。Flash 插件可以跟踪上传的数据量,从而告诉 javascript。

  • 在某些情况下,一种近似时间的方法也适用。

  • 剩下的唯一选择是持续 ping 服务器以了解发生了多少传输。

于 2013-03-18T14:00:29.220 回答