Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/09/2012, 04:28
nomafeito
 
Fecha de Ingreso: octubre-2010
Mensajes: 69
Antigüedad: 13 años, 6 meses
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>