chrome extension crashes when i try to upload a big file
当我在上传一个超级大的文件的时候,我的chrome就会崩掉,一开始的代码是这样的
var fd = new FormData();
fd.append("myfile", resfile);
var xhr = new XMLHttpRequest();
//xhr.responseType = 'arraybuffer';
$(".loading").removeClass('hidden');
xhr.open("POST", kp.fileServerBaseUr + "/?fileType=video");
xhr.send(fd);
xhr.onload= function(){
if(this.status == 200)
{
//alert( xhr.responseText ) ;
var datastr = xhr.responseText;
var strjson = $.parseJSON(datastr);
//console.log(strjson);
var urlstr = strjson.data[0].uri;
var duration = strjson.data[0].duration;
var thumbnailurl = strjson.data[0].thumbnail.uri;
var width=strjson.data[0].thumbnail.width;
var height=strjson.data[0].thumbnail.height;
$("#postervideo" + imgnum).val(urlstr);
$("#posterimg" + imgnum).val(thumbnailurl);
$("#durationvideo" + imgnum).val(duration);
$("#widthimg" + imgnum).val(width);
$("#heightimg" + imgnum).val(height);
$("#myimage" + imgnum).val("");
$("#upfm" + imgnum).css("display", "none");
$("#upmess2").css("display", "block");
$("#upmess" + imgnum).html(
'<span>视频上传成功</span> <a href="javascript:void(0);" id="again' + imgnum
+ '">重新上传</a>');
if ($("#again" + imgnum)) {
$("#again" + imgnum).click(function () {
$("#upfm" + imgnum).css("display", "block");
$("#upmess" + imgnum).html("");
});
}
$(".loading").addClass('hidden');
}
else{
//alert( xhr.statusText ) ;
}} ;
只要在这个里面上传了大的文件就会崩掉,
后来把红以那段改成这个就可以了,原因:在onload的时候文件还没有传完,一直在传,所以要监听这个事件
xhr.onreadystatechange = function(){
if( xhr.readyState == 4 && xhr.status == 200 )
{
浙公网安备 33010602011771号