注意:我根本不了解Flash / ActionScript。
我正在使用Jquery webcam plugin从相机中捕捉图片。此插件提供ActionScript代码,用于将捕获的图片上载到服务器。它工作正常,除了一件事 - 当文件正在上传我的网页冻结。
我在哪里可以阅读有关使用Flash上传异步文件的内容,或者我应该如何更改以下代码以异步上传文件?
public static function save(file:String):Boolean {
if ("stream" == mode) {
return true;
} else if (null != buffer) {
if ("callback" == mode) {
for (var i = 0; i < 240; ++i) {
var row = "";
for (var j=0; j < 320; ++j) {
row+= buffer.getPixel(j, i);
row+= ";";
}
ExternalInterface.call("webcam.onSave", row);
}
} else if ("save" == mode) {
if (file) {
var e = new JPGEncoder(quality);
var sal = {};
sal.sendAndLoad = XML.prototype.sendAndLoad;
sal.contentType = "image/jpeg";
sal.toString = function() {
return e.encode(JSCam.buffer);
}
var doc = new XML();
doc.onLoad = function(success) {
ExternalInterface.call("webcam.onSave", "done");
}
sal.sendAndLoad(file, doc);
/*
ExternalInterface.call('webcam.debug', "error", "No save mode compiled in.");
return false;
*/
} else {
ExternalInterface.call('webcam.debug', "error", "No file name specified.");
return false;
}
} else {
ExternalInterface.call('webcam.debug', "error", "Unsupported storage mode.");
}
buffer = null;
return true;
}
return false;
}