我的问题是,是否可以使用javascript或其他任何方式跟踪下载过程。假设我想在下载完成或取消时做一些事情。
可能吗?
由于
答案 0 :(得分:1)
在客户端(即使用javascript)无法做到这一点,所以你的问题的答案是:“你不能”
在服务器端,我会说你可以将输出流式传输到客户端并在最后进行某种回调。它需要在服务器端完成。
在伪代码中:
page.language:
myFile = "/thing.zip"
while !eof
send a part of the file to the client
keep track of this
send to database "it's downloading at x%"
end
send to database "ok it's downloaded"
这取决于您的服务器端技术,我不确定PHP是否会处理这样的事情。我使用.NET做了类似的事情并且工作正常......这是一个棘手的想法所以确保它值得做
答案 1 :(得分:0)
如果您尝试在页面上的对象下载(如大图片)时发生某些事情,那么您可以使用onLoad事件,如下所示:
<img src="large_image" onload="alert('Large image loaded.');" />
当然,您可以更改onLoad事件中的行为以执行任何操作。