webuploader该怎么配置啊,php的
发布网友
发布时间:2023-10-13 08:32
我来回答
共2个回答
热心网友
时间:2024-07-30 09:48
双核浏览器下在chrome内核中使用uploadify总有302问题,也不知道如何修复,反正很麻烦,之所以喜欢360浏览器是因为帮客户控制渲染内核,开发人员的神器啊有木有:
若页面需默认用极速核,增加标签:<meta name="renderer" content="webkit">
若页面需默认用ie兼容内核,增加标签:<meta name="renderer" content="ie-comp">
若页面需默认用ie标准内核,增加标签:<meta name="renderer" content="ie-stand">
要解决302问题也很简单,就是html5的文件上传,正好最近在ueditor里看到百度的webuploader,会自动选择flash html5,就是一个完善的解决方案了。
将最常用的操作封装为插件:
(function ($, applicationPath) {
function initWebUpload(item, options) {
var defaults = {
hiddenInputId: "uploadifyHiddenInputId", // input hidden id
onAllComplete: function (event) { }, // 当所有file都上传后执行的回调函数
onComplete: function (event) { },// 每上传一个file的回调函数
innerOptions: {},
fileNumLimit: undefined,
fileSizeLimit: undefined,
fileSingleSizeLimit: undefined
};
var opts = $.extend({}, defaults, options);
var target = $(item);//容器
var pickerid = "";
if (typeof guidGenerator != 'undefined')//给一个唯一ID
pickerid = guidGenerator();
else
pickerid = (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
var uploaderStrdiv = '<div class="webuploader">' +
'<div id="thelist" class="uploader-list"></div>' +
'<div class="btns">' +
'<div id="' + pickerid + '">选择文件</div>' +
//'<a id="ctlBtn" class="btn btn-default">开始上传</a>' +
'</div>' +
'</div>';
target.append(uploaderStrdiv);
var $list = target.find('#thelist'),
$btn = target.find('#ctlBtn'),//这个留着,以便随时切换是否要手动上传
state = 'pending',
uploader;
var jsonData = {
fileList: []
};
var webuploaderoptions = $.extend({
// swf文件路径
swf: applicationPath + '/Scripts/lib/webuploader/Uploader.swf',
// 文件接收服务端。
server: applicationPath + '/MvcPages/WebUploader/Process',
// 选择文件的按钮。可选。
// 内部根据当前运行是创建,可能是input元素,也可能是flash.
pick: '#' + pickerid,
// 不压缩image, 默认如果是jpeg,文件上传前会压缩一把再上传!
resize: false,
fileNumLimit: opts.fileNumLimit,
fileSizeLimit: opts.fileSizeLimit,
fileSingleSizeLimit: opts.fileSingleSizeLimit
},
opts.innerOptions);
var uploader = WebUploader.create(webuploaderoptions);
uploader.on('fileQueued', function (file) {//队列事件
$list.append('<div id="' + file.id + '" class="item">' +
'<div class="info">' + file.name + '</div>' +
'<div class="state">等待上传...</div>' +
'<div class="del"></div>' +
'</div>');
});
uploader.on('uploadProgress', function (file, percentage) {//进度条事件
var $li = target.find('#' + file.id),
$percent = $li.find('.progress .bar');
// 避免重复创建
if (!$percent.length) {
$percent = $('<span class="progress">' +
'<span class="percentage"><span class="text"></span>' +
'<span class="bar" role="progressbar" style="width: 0%">' +
'</span></span>' +
'</span>').appendTo($li).find('.bar');
}
$li.find('div.state').text('上传中');
//$li.find(".text").text(percentage * 100 + '%');
$percent.css('width', percentage * 100 + '%');
});
uploader.on('uploadSuccess', function (file, response) {//上传成功事件
target.find('#' + file.id).find('div.state').text('已上传');
var fileEvent = {
queueId: file.id,
name: file.name,
size: file.size,
type: file.type,
filePath: response.filePath
};
jsonData.fileList.push(fileEvent)
opts.onComplete(fileEvent);
});
uploader.on('uploadError', function (file) {
target.find('#' + file.id).find('div.state').text('上传出错');
});
uploader.on('uploadComplete', function (file) {//全部完成事件
target.find('#' + file.id).find('.progress').fadeOut();
var fp = $("#" + opts.hiddenInputId);
fp.val(JSON.stringify(jsonData));
opts.onAllComplete(jsonData.fileList);
});
uploader.on('fileQueued', function (file) {
uploader.upload();
});
uploader.on('filesQueued', function (file) {
uploader.upload();
});
uploader.on('all', function (type) {
if (type === 'startUpload') {
state = 'uploading';
} else if (type === 'stopUpload') {
state = 'paused';
} else if (type === 'uploadFinished') {
state = 'done';
}
if (state === 'uploading') {
$btn.text('暂停上传');
} else {
$btn.text('开始上传');
}
});
$btn.on('click', function () {
if (state === 'uploading') {
uploader.stop();
} else {
uploader.upload();
}
});
//删除
$list.on("click", ".del", function () {
var $ele = $(this);
var id = $ele.parent().attr("id");
var deletefile = {};
$.each(jsonData.fileList, function (index, item) {
if (item && item.queueId === id) {
deletefile = jsonData.fileList.splice(index, 1)[0];
$("#" + opts.hiddenInputId).val(JSON.stringify(jsonData));
$.post(opts.ashx, { 'type': 'delete', 'filepathname': deletefile.filePath }, function (returndata) {
$ele.parent().remove();
});
return;
}
});
});
}
$.fn.powerWebUpload = function (options) {
var ele = this;
if (typeof PowerJs != 'undefined') {
$.lazyLoad(applicationPath + "/Scripts/lib/webuploader/webuploader.css", function () { }, 'css');
$.lazyLoad(applicationPath + "/Scripts/lib/webuploader/webuploader.min.js", function () {
initWebUpload(ele, options);
});
}
else {
initWebUpload(ele, options);
}
}
})(jQuery, applicationPath);
html:
<div id="uploadify" class="shortuploader"></div>
<input type="hidden" id="hfFilePath" />
热心网友
时间:2024-07-30 09:48
官网有php的例子,直接下载放到项目里面,修改upload.js里面的提交路径!
webuploader该怎么配置啊,php的
var webuploaderoptions = $.extend({ // swf文件路径 swf: applicationPath + '/Scripts/lib/webuploader/Uploader.swf',// 文件接收服务端。server: applicationPath + '/MvcPages/WebUploader/Process',// 选择文件的按钮。可选。// 内部根据当前运行是创建,可能是input元素,也可能是flash.pick:...
sonar qube
蜚语安全是一家专注于提供软件供应链安全创新解决方案的网络安全企业,成立于2019年。蜚语安全孵化自上海知名大学计算机系,创始团队由4名博士组成,拥有十数年的前沿安全研究和一线安全业务经验。蜚语安全扎根左移安全开发赛道,深耕企业安全服...
webuploader 上传文件php怎么接受
初始化Web Uploader jQuery(function() { list = $('#thelist'),btn = $('#ctlBtn'),state = 'pending',uploader;uploader = WebUploader.create({ // 不压缩image resize: false,// swf文件路径 swf: 'uploader.swf',// 文件接收服务端。server: upload.php,// 选择文件的按钮。可选。...
用webuploader怎么解决跨域上传文件的问题
Access-Control-Allow-Origin: #允许访问的源,如ht localhost:3000 Access-Control-Allow-Methods: #允许的方法,如get, post 浏览器收到这个响应就会继续原来的请求,否则就会终止。在webuploader中可以在uploadBeforeSend的回调中设置请求的头部,例如 uploader.on('uploadBeforeSend', function(obj, data...
thinkphp中webuploadery图片上传问题
设置 server:"U('Upload/upload')"或 server:"/index.php/Upload/upload"php上传处理代码:defaultConfigs = array('maxSize' => 1024*1024,'exts' => array('jpg', 'gif', 'png', 'jpeg'),'rootPath' => '','saveName' => date('YmdHis') . rand(1234, 9999) . rand(1234, 999...
使用webuoploader遇到的几个问题
还有一点就是采用大文件分片并发上传,极大的提高了文件上传效率。基于这些优点,小萌选择了这款插件。对于webuploader的使用方法,那么今天要介绍的是小萌在做官网项目的时候使用webuoploader遇到的几个问题。问题一:WebUploader 某些浏览器如chrome,点击上传文件,选择框会延迟几秒才显示,反应很慢一开始...
asp.net 如何使用百度的webuploader
asp.net的服务器端的自己重新写一个服务,下载下来的是一个php的写的,将下载的代码进行如下修改(这里使用的是demo中的image-upload):首先,找到109行的代码 var swf = './expressInstall.swf';修改为您的地址 //修改您的flash地址var swf = './Scripts/webuploader-0.1.5/examples/image-upload...
我需要一个js或者jquery能批量上传图片+预览的功能。急~~~急~~~急...
1、引入资源 使用Web Uploader文件上传需要引入三种资源:JS, CSS, SWF。<!--引入CSS--> <!--引入JS--> <!--SWF在初始化的时候指定,在后面将展示--> 2、Html 首先需要准备一个按钮,和一个用来存放添加的文件信息列表的容器。<!--dom结构部分--> <!--用来存放item--> 选...
PHPCMS如何安装webuploader?
去下载程序 上传 直接安装就可以了 你也可以直接去问空间商 一般的问题都可以帮助你解决 想安装程序都是可以让空间商搞定的 不会私聊把
webuploader在安卓微信环境上传为什么不能多选
<!--引入CSS-->
php中上传文件的方法有多少种
这个是利用jQuery的上传插件,上传可以带进度条,容易配置。总结:可以上传一些大文件,和图片,而且带进度条,可以多文件上传,在WEB中会经常用。三、利用百度的webupload WebUploader 是由 Baidu FEX 团队开发的一款以 HTML5 为主,FLASH 为辅的现代文件上传组件。在现代的浏览器里面能充分发挥 HTML5 ...