09模块-downloader【下载各种文件】

downloader模块管理网络文件下载任务,用于从服务器下载各种文件,并支持跨域访问操作。通过plus.downloader获取下载管理对象。Downloader下载使用HTTP的GET/POST方式请求下载文件,符合标准HTTP/HTTPS传输协议。

plus.downloader.createDownload();创建下载任务
plus.downloader.enumerate();枚举下载任务
plus.downloader.clear();清除下载任务
plus.downloader.startAll();开始所有下载任务


plus.downloader.createDownload().id 下载任务的标识
plus.downloader.createDownload().url 下载文件的地址
plus.downloader.createDownload().filename 下载的文件名称

plus.downloader.createDownload().downloadedSize 已完成下载文件的大小

plus.downloader.createDownload() 对象添加statechanged事件的监听。并在回调中查看

plus.downloader.createDownload().totalSize 下载任务文件的总大小
plus.downloader.createDownload().abort() 取消下载任务
plus.downloader.createDownload().pause() 暂停下载任务
plus.downloader.createDownload().resume() 恢复暂停的下载任务
plus.downloader.createDownload().start() 开始下载任务

 

 

 

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
<title>心得</title>
<script type="text/javascript">
//还是老样子无需等候plus载入,因为是点击按钮获取的,若是打开页面就获取则需要 plus载入后再执行代码
var dtask = null;
var i=0;//
function xiazai(){
dtask = plus.downloader.createDownload('http://phpstudy.php.cn/phpstudy/JspStudy.zip');
dtask.addEventListener("statechanged",function(duixiang,status){
document.getElementById("ywc").innerHTML = '已完成:'+parseInt((duixiang.downloadedSize)/128)+'kb';
document.getElementById("zdx").innerHTML = '总大小:'+parseInt((duixiang.totalSize)/128)+'kb';
i++;
//document.getElementById("ywc").innerHTML = '文件名:'+duixiang.filename+'|'+i;//可以看到该数据一直在变化,只要下载开始就会不断回调该函数
});//下载任务状态变化回调
dtask.start();
}
function zt(){
dtask.pause();
}
function jx(){
dtask.resume();
}
function qx(){
dtask.abort();
document.getElementById("ywc").innerHTML = '';
document.getElementById("zdx").innerHTML = '';
}
function qxall(){
plus.downloader.clear();
plus.downloader.startAll();
document.getElementById("ywc").innerHTML = '';
document.getElementById("zdx").innerHTML = '';
}
</script>
</head>
<style>
div{height:40px; line-height: 40px;border-bottom:#ccc dashed 1px;}
</style>
<body>
<p id='zdx'></p>
<p id='ywc'></p>
<div><input type='button' onclick='xiazai()' value='开始下载文件' /></div>
<div><input type='button' onclick='zt()' value='暂停下载' /></div>
<div><input type='button' onclick='jx()' value='继续下载' /></div>
<div><input type='button' onclick='qx()' value='取消当前下载' /></div>
<div><input type='button' onclick='qxall()' value='关闭所有未下载的文件,并且取消所有正在下载的文件' /></div>
</body>
</html>

 

posted @ 2018-07-17 14:34  学画人生  阅读(1219)  评论(0编辑  收藏  举报