Foros del Web » Creando para Internet » Flash y Actionscript »

FileReference browser dentro de un ExternalInterface

Estas en el tema de FileReference browser dentro de un ExternalInterface en el foro de Flash y Actionscript en Foros del Web. Hola, estaba haciendo una pequeña aplicación donde me permira subir archivos con progreso pero manipulado completamente desde javascript utilizando ExternalInterface y hasta el momento todo ...
  #1 (permalink)  
Antiguo 17/04/2011, 06:53
 
Fecha de Ingreso: abril-2011
Mensajes: 7
Antigüedad: 13 años, 7 meses
Puntos: 0
FileReference browser dentro de un ExternalInterface

Hola, estaba haciendo una pequeña aplicación donde me permira subir archivos con progreso pero manipulado completamente desde javascript utilizando ExternalInterface y hasta el momento todo va bién pero al intentar llamar browser() no me funciona.

Intenté debuggearlo y si se ejecuta bién la función llamada desde el exterior pero esa función en particular no hace nada.

Si lo llamo desde una función interna haciendole click a lo que sea ahi si funciona bién.

Será algún metodo de seguridad nativa o algo por el estilo?

por lo menos si me deja enviar el archivo desde ExternalInterface.

Código:
import flash.net.FileReference;
import flash.external.ExternalInterface;

var arrTypes:Array = new Array();
var objTypes:Object = new Object();
objTypes.description = "Todos los archivos";
objTypes.extension = "*";

arrTypes.push(objTypes);

var listUpload:Object = new Object(); 
var fileUpload:FileReference = new FileReference();
fileUpload.addListener(listUpload);

function buscarFL(){
	/* No funciona */
	fileUpload.browse(arrTypes);
}

function subirFL(){
	fileUpload.upload(_root.uploadfile);
}

ExternalInterface.addCallback("buscarFL", this, buscarFL);
ExternalInterface.addCallback("subirFL", this, subirFL);

btbrowse.onRelease = function() {
	fileUpload.browse(arrTypes);
}

listUpload.onSelect = function(file) {
	ExternalInterface.call("seleccionado", file.name);
}

listUpload.onProgress = function(file, bytesLoaded, bytesTotal):Void {
	if(Math.round(bytesLoaded*100/bytesTotal) == 100){
		ExternalInterface.call("estado", "Moviendo archivo ...");		
	}else{
		ExternalInterface.call("estado", "Subiendo archivo " + Math.round(bytesLoaded*100/bytesTotal) + "%");
	}
}

listUpload.onComplete = function(file:FileReference):Void {
	ExternalInterface.call("estado", "Archivo subido correctamente");
}

Etiquetas: browsers
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:52.