HttpUploader2发布 | 新颖网络图片上传插件开发文档 For Web
2011年03月15日
/* 官方博客:http://www.cnblogs.com/xproer 示例下载:http://www.ncmem.com/download/HttpUploader2.rar 联系邮箱:1085617561@qq.com 联系QQ:1085617561 V1.0 更新 2009-3-211.增加用户名,密码,IP,传输模式接口 2.增加速度计算功能 3.修复进度显示错误 2010-4-181.增加拖放面板,用户可以直接从资源管理器中选取文件并拖放到面板中。
*/
//全局对象
varFileUploaderCollection = newObject();
varFileUploaderCollectionCount = 0; //文件总数
varUnUploaderList = newArray(); //保存未上传任务ID
varDomFileUploadListerID; //文件上传列表ID
/*
2009-11-5 文件管理类 属性: UpFileList 参数: [0] 上传列表对象ID
*/
functionFileTransferManager()
{
DomFileUploadListerID = arguments[0]; //保存文件上传列表ID this.UpFileList = document.getElementById(arguments[0]); this.Fields = {}; //符加信息 this.Config = { "EncodeType": "UTF-8"
, "PostUrl": "http://localhost:1595/upload.aspx" }; //配置信息 this.ActiveX = { "Uploader": "Xproer.HttpUploader2" , "Partition": "Xproer.HttpUploaderPartition2" };
}
/*
添加一个文件到上传队列 参数: [0] 文件名称 返回值: 文件上传对象
*/
FileTransferManager.prototype.AddFile = function()
{
//本地文件名称不存在 if (!this.Exist(arguments[0])) { varfileNameArray = arguments[0].split("\\"); varfileName = fileNameArray[fileNameArray.length - 1]; varfid = FileUploaderCollectionCount; UnUploaderList.push(fid); //添加到未上传列表 varupFile = newFileUploader(fid, arguments[0], this.ActiveX["Uploader"]); upFile.ATL.PostUrl = this.Config["PostUrl"]; upFile.ATL.EncodeType = this.Config["EncodeType"]; varnewTable = document.getElementById("UploaderTemplate").cloneNode(true); varline = document.getElementById("FilePostLine").cloneNode(true); //分隔线 line.id = "FilePostLine" + fid; line.style.display = "block"; FileUploaderCollection[fid] = upFile; this.UpFileList.appendChild(newTable); this.UpFileList.appendChild(line); //upFile.Post(); //开始上传 upFile.Ready(); //准备 FileUploaderCollectionCount++; }
}
//传送当前队列的第一个文件
FileTransferManager.prototype.PostFirst = function()
{
if (UnUploaderList.length > 0) { varindex = UnUploaderList.shift(); FileUploaderCollection[index].Post(); }
}
/*
验证文件名是否存在 参数: [0]:文件名称
*/
FileTransferManager.prototype.Exist = function()
{
varfn = arguments[0]; for (ainFileUploaderCollection) { if (FileUploaderCollection[a].LocalFile == fn) { returntrue; } } returnfalse;
}
/*
根据ID删除上传任务 参数: [0] FileID
*/
FileTransferManager.prototype.Delete = function()
{
varobj = FileUploaderCollection[arguments[0]];
if (null == obj) return; vartbID = "item" + obj.FileID; varitem = document.getElementById(tbID); if (item) document.removeChild(item); //删除
}
//单击控制按钮
functionBtnControlClick()
{
varobj = event.srcElement; // varobjup = FileUploaderCollection[obj.fid]; "0": "启动网络环境错误",
"1": "SOCKET错误",
"2": "打开SOCKET错误",
"3": "创建SOCKET错误",
"4": "连接服务器错误",
"5": "发送数据错误",
"6": "未设置本地文件",
"7": "本地文件不存在",
"8": "不能读取本地文件",
"9": "公司未授权",
"10": "未设置IP",
"11": "域名未授权"
}
varFileUploaderState = { Ready: 0, Posting: 1, Stop: 2, Error: 3, GetNewID: 4, Complete: 5, WaitContinueUpload: 6, None: 7, Waiting: 8
};
//文件上传对象
functionFileUploader(fileID, localFile, acx)
{
//this.pMsg; //this.pProcess; //this.pPercent; //this.pButton //this.TimeOutID; this.TimeOutID = 0;
this.State = FileUploaderState.None; this.ATL = newActiveXObject(acx); this.ATL.OnComplete = HttpUploader_Complete; this.ATL.OnPost = HttpUploader_Process; this.ATL.OnError = HttpUploader_Error; this.ATL.OnConnected = HttpUploader_Connected; this.ATL.LocalFile = localFile;
this.ATL.CompanyLicensed = "北京新颖网络";
this.ATL.FileID = fileID; this.ATL.Object = this; this.FileID = fileID; this.LocalFile = localFile;
}
//连接成功
functionHttpUploader_Connected(obj)
{
obj.pMsg.innerText = "服务器连接成功";
}
//传输完毕
functionHttpUploader_Complete(obj)
{
obj.pButton.innerText = ""; obj.pProcess.style.width = "100%"; obj.pPercent.innerText = "100%"; obj.pMsg.innerText = "已上传:" +
HttpUploader2发布 | 新颖网络图片上传插件开发文档 For Web
20:34 浏览 (0) 评论 (0) 相关推荐 [b]评论 [/b]
[b]发表评论 [/b]
您还没有登录,请登录后发表评论(快捷键 Alt+S / Ctrl+Enter)
2011年03月15日
/* 官方博客:http://www.cnblogs.com/xproer 示例下载:http://www.ncmem.com/download/HttpUploader2.rar 联系邮箱:1085617561@qq.com 联系QQ:1085617561 V1.0 更新 2009-3-211.增加用户名,密码,IP,传输模式接口 2.增加速度计算功能 3.修复进度显示错误 2010-4-181.增加拖放面板,用户可以直接从资源管理器中选取文件并拖放到面板中。
*/
//全局对象
varFileUploaderCollection = newObject();
varFileUploaderCollectionCount = 0; //文件总数
varUnUploaderList = newArray(); //保存未上传任务ID
varDomFileUploadListerID; //文件上传列表ID
/*
2009-11-5 文件管理类 属性: UpFileList 参数: [0] 上传列表对象ID
*/
functionFileTransferManager()
{
DomFileUploadListerID = arguments[0]; //保存文件上传列表ID this.UpFileList = document.getElementById(arguments[0]); this.Fields = {}; //符加信息 this.Config = { "EncodeType": "UTF-8"
, "PostUrl": "http://localhost:1595/upload.aspx" }; //配置信息 this.ActiveX = { "Uploader": "Xproer.HttpUploader2" , "Partition": "Xproer.HttpUploaderPartition2" };
}
/*
添加一个文件到上传队列 参数: [0] 文件名称 返回值: 文件上传对象
*/
FileTransferManager.prototype.AddFile = function()
{
//本地文件名称不存在 if (!this.Exist(arguments[0])) { varfileNameArray = arguments[0].split("\\"); varfileName = fileNameArray[fileNameArray.length - 1]; varfid = FileUploaderCollectionCount; UnUploaderList.push(fid); //添加到未上传列表 varupFile = newFileUploader(fid, arguments[0], this.ActiveX["Uploader"]); upFile.ATL.PostUrl = this.Config["PostUrl"]; upFile.ATL.EncodeType = this.Config["EncodeType"]; varnewTable = document.getElementById("UploaderTemplate").cloneNode(true); varline = document.getElementById("FilePostLine").cloneNode(true); //分隔线 line.id = "FilePostLine" + fid; line.style.display = "block"; FileUploaderCollection[fid] = upFile; this.UpFileList.appendChild(newTable); this.UpFileList.appendChild(line); //upFile.Post(); //开始上传 upFile.Ready(); //准备 FileUploaderCollectionCount++; }
}
//传送当前队列的第一个文件
FileTransferManager.prototype.PostFirst = function()
{
if (UnUploaderList.length > 0) { varindex = UnUploaderList.shift(); FileUploaderCollection[index].Post(); }
}
/*
验证文件名是否存在 参数: [0]:文件名称
*/
FileTransferManager.prototype.Exist = function()
{
varfn = arguments[0]; for (ainFileUploaderCollection) { if (FileUploaderCollection[a].LocalFile == fn) { returntrue; } } returnfalse;
}
/*
根据ID删除上传任务 参数: [0] FileID
*/
FileTransferManager.prototype.Delete = function()
{
varobj = FileUploaderCollection[arguments[0]];
if (null == obj) return; vartbID = "item" + obj.FileID; varitem = document.getElementById(tbID); if (item) document.removeChild(item); //删除
}
//单击控制按钮
functionBtnControlClick()
{
varobj = event.srcElement; // varobjup = FileUploaderCollection[obj.fid]; "0": "启动网络环境错误",
"1": "SOCKET错误",
"2": "打开SOCKET错误",
"3": "创建SOCKET错误",
"4": "连接服务器错误",
"5": "发送数据错误",
"6": "未设置本地文件",
"7": "本地文件不存在",
"8": "不能读取本地文件",
"9": "公司未授权",
"10": "未设置IP",
"11": "域名未授权"
}
varFileUploaderState = { Ready: 0, Posting: 1, Stop: 2, Error: 3, GetNewID: 4, Complete: 5, WaitContinueUpload: 6, None: 7, Waiting: 8
};
//文件上传对象
functionFileUploader(fileID, localFile, acx)
{
//this.pMsg; //this.pProcess; //this.pPercent; //this.pButton //this.TimeOutID; this.TimeOutID = 0;
this.State = FileUploaderState.None; this.ATL = newActiveXObject(acx); this.ATL.OnComplete = HttpUploader_Complete; this.ATL.OnPost = HttpUploader_Process; this.ATL.OnError = HttpUploader_Error; this.ATL.OnConnected = HttpUploader_Connected; this.ATL.LocalFile = localFile;
this.ATL.CompanyLicensed = "北京新颖网络";
this.ATL.FileID = fileID; this.ATL.Object = this; this.FileID = fileID; this.LocalFile = localFile;
}
//连接成功
functionHttpUploader_Connected(obj)
{
obj.pMsg.innerText = "服务器连接成功";
}
//传输完毕
functionHttpUploader_Complete(obj)
{
obj.pButton.innerText = ""; obj.pProcess.style.width = "100%"; obj.pPercent.innerText = "100%"; obj.pMsg.innerText = "已上传:" +
HttpUploader2发布 | 新颖网络图片上传插件开发文档 For Web
20:34 浏览 (0) 评论 (0) 相关推荐 [b]评论 [/b]
[b]发表评论 [/b]
您还没有登录,请登录后发表评论(快捷键 Alt+S / Ctrl+Enter)