Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Cargar imagen, funciona en TODOS menos en SAFARI ¿por qué?

Estas en el tema de Cargar imagen, funciona en TODOS menos en SAFARI ¿por qué? en el foro de Frameworks JS en Foros del Web. Buenas, tengo el siguiente código, es un simple form que seleccionas una imagen y lo visualiza en el body. Mi problema es que me funciona ...
  #1 (permalink)  
Antiguo 10/09/2012, 04:28
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 14 años, 1 mes
Puntos: 1
Cargar imagen, funciona en TODOS menos en SAFARI ¿por qué?

Buenas, tengo el siguiente código, es un simple form que seleccionas una imagen y lo visualiza en el body. Mi problema es que me funciona en todos los navegadores menos en Safari ¿porqué?
Lo tengo localizado en el evento "onload" del objeto FileReader, no se me ocurre como solucionar esto. Gracias por vuestra ayuda.

Código HTML:
<!DOCTYPE HTML>
<html>
<title>Administrador</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>

 <script language="JavaScript" type="text/javascript" src="ent/js/jquery-1.8.0.min.js"></script>
</head>
<body id="body">
<form enctype="multipart/form-data">
<input type="file"/>
</form>
<script>
$(":file").change(function(){
   previewURL(this);
    
});
function previewURL(fileinput){
    var fileObj = fileinput,
        file;
    
    if (fileObj.files) {
        file = fileObj.files[0];
        var fr = new FileReader;
        fr.onload = changeimg;
        fr.readAsDataURL(file)
    } else {
        file = fileObj.value;
        changeimg(file);
    }
}
function changeimg(str) {
    if(typeof str === "object") {
        str = str.target.result; // file
    }
    $("body").html("<img src='"+str+"'></img>");
    alert (str);
}

</script>
</body> 
  #2 (permalink)  
Antiguo 10/09/2012, 09:25
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 6 meses
Puntos: 220
Respuesta: Cargar imagen, funciona en TODOS menos en SAFARI ¿por qué?

Pero revisa si Safari soporta primero el FileReader revisa en que version esta tu safari mira este link para que observes que navegadores y sus versiones respectivas soportan FileReader

http://caniuse.com/filereader
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones
  #3 (permalink)  
Antiguo 10/09/2012, 15:09
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Cargar imagen, funciona en TODOS menos en SAFARI ¿por qué?

Ah! Claro, no lo soporta.
Tengo la 5.1.7, es estraño que la 6 sí lo soporta como (current) y según la versión que tengo es la última actualizada.
A esperar toca!
Muchas gracias!!!!!
  #4 (permalink)  
Antiguo 11/09/2012, 02:47
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 14 años, 1 mes
Puntos: 1
Respuesta: Cargar imagen, funciona en TODOS menos en SAFARI ¿por qué?

¿se puede hacer preview sin usar el FileReader?
Por más que busco con google, siempre aparece el uso del FileReader y que el file.val() sale un fakepath en Safari.
No hay versión 6 de Safari para Windows.
Gracias otra vez.
  #5 (permalink)  
Antiguo 11/09/2012, 09:02
Avatar de Dradi7  
Fecha de Ingreso: junio-2008
Ubicación: Peru - Lima
Mensajes: 1.518
Antigüedad: 16 años, 6 meses
Puntos: 220
Respuesta: Cargar imagen, funciona en TODOS menos en SAFARI ¿por qué?

Bueno creo que podrias capturar la url del input file y poder crear un elemento img y mostrarlo ahi mismo
__________________
La clave de todo triunfador es eliminar todas sus excusas y sus limitaciones

Etiquetas: funcion, html, input, js, menos, safari
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:27.