桌面图像拖放上传崩溃浏览器
Desktop image drag&drop upload crashing browser
我得到了一个通过ajaxForm上传图像的表单。我已经实现了一个功能,让用户可以从桌面(HTML5拖放)的照片。如果照片"小"——比如2mb,一切都很好。当我尝试上传大于4mb的照片时,问题就出现了。Chrome浏览器崩溃。
AjaxForm
$(document).ready(function() {
$("#uploadForm").ajaxForm({
iframe: true,
dataType:"json",
beforeSubmit: function () {
$("#post .button.save").prop("disabled",true).val("Uploading...");
},
success: function (result) {
$("#FilePhotoString").val("");
$("#post").css({
"background": 'url(' + result + ') no-repeat center center',
"display": "block",
"height": $("body").height(),
"background-size": "cover"
});
$("img").attr("src",result).load(function() {
$('input[name="ImageFilePath"]').attr('value', result);
$("#post .button.save.now").prop("disabled",false).val("Publish now");
$("#post .button.save.later").prop("disabled",false).val("Publish later");
});
}
});
});
下降document.body.addEventListener('dragover',function(event) { event.preventDefault(); },false);
document.querySelector('#content').addEventListener('drop', function(event) {
event.preventDefault();
var reader = new FileReader();
reader.onload = function(evt) {
$("#FilePhotoString").val(evt.target.result);
$("#uploadForm").submit();
};
reader.readAsDataURL(event.dataTransfer.files[0]);
}, false);
成功返回的结果只是上传照片的路径。我能做些什么使浏览器不会崩溃?
如何采用另一种方法,如使用FormData和发送文件而不是字符串。
var data = new FormData(document.getElementById('#uploadForm'));
data.append('theNameYouWantToSend', event.dataTransfer.files[0]);
然后发送一个ajax请求
$.ajax({
url:'theurl',
type:'post',
data: data,
contentType:false,
processData:false,
...
});
我认为这不是jquery/ajax/浏览器的问题。例如,如果您使用的是apache服务器,请检查php.ini中的"upload_max_filesize = 2M"。
默认大小是2mb,所以它很适合你的问题。如果您尝试上传超过2mb,服务器将发送超时
相关文章:
- location.reload(true)崩溃浏览器选项卡
- 为什么这个For循环会使浏览器实验室崩溃
- 脸书's的inApp浏览器在尝试上传表单中的照片时崩溃
- 为什么这会造成一个无休止的循环并使我的浏览器崩溃
- jQuery文件上传崩溃的浏览器
- javascript audio currentTime使一些浏览器崩溃
- 在浏览器崩溃之前检测到内存耗尽
- 浏览器11上的Javascript location.href崩溃
- Javascript游戏与循环崩溃浏览器
- 输入输入前浏览器崩溃
- 写得不好的jQuery正在崩溃浏览器
- Ajax 自动完成冻结/崩溃浏览器
- 简单Greasemonkey脚本崩溃浏览器
- 重构jQuery以淡出并阻止其崩溃浏览器
- 为什么这个崩溃浏览器选项卡
- Javascript和细分,在for循环中崩溃浏览器
- 桌面图像拖放上传崩溃浏览器
- 可处理的更新单元格崩溃浏览器
- 简单的页面崩溃浏览器
- ASP.NET 中的角崩溃浏览器