javascript - 用ajax检查下载时间?

标签 javascript html ajax jquery

<分区>

我想下载一个 512 kb 的文件并查看下载时间。 我使用以下代码,但它只检查网站的响应时间,不会等到整个文件下载完毕。如何查看整个文件下载时间?

var start = new Date();  
$.ajax ({
    url: 'https://www.example.com/512kb',
    cache: false,
    success : function()
    {
        var total=(new Date() - start)  
    },
    error : function(jqxhr, status, ex) {}   
});

编辑:当我在本地 PC 上运行网站时,Internet Explorer 正在等待所有文件下载完毕,而 Firefox 和 Chrome 则不会。如果我把所有的行为都放在服务器上,而不是等待所有文件。为什么在本地 Internet Explorer 会这样?

最佳答案

看起来您没有将 total 变量用于任何事情。因为它是在 success 回调函数中定义的,所以它只存在于该函数中,因此在函数返回时会丢失。

以下代码显示了一个警告框,其中包含完成 ajax 调用所需的时间和检索到的数据的长度:

var start = new Date();
var total;
$.ajax ({
    url: 'http://fiddle.jshell.net/',
    cache: false,
    success : function(data)
    {
        total=(new Date() - start);
        alert('total: ' + total + ' len: ' + data.length);
    },
    error : function(jqxhr, status, ex) {}   
});

http://jsfiddle.net/WkKE2/2/

关于javascript - 用ajax检查下载时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14231205/

相关文章:

html - 从单独的 css 文件中设计按钮样式

php - 在不刷新的情况下更新标签内的变量

javascript - 发送函数通过ajax将数据发送到php文件

javascript - jQuery如何动态添加选择元素并重置选择?

Javascript,getDay()返回错误的数字

javascript - 一键将文本输入转换为JSON并将结果复制到剪贴板

javascript - django ajax多表单提交

javascript - 如何在服务器上为 jQuery/uploadify 获取文件创建日期?

javascript - Ajax 和 PHP 调试

javascript - 单击按钮执行 2 个操作 : file download & signup