Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] modificacion a codigo javascript sobre un preview de una imagen

Estas en el tema de modificacion a codigo javascript sobre un preview de una imagen en el foro de Javascript en Foros del Web. muy buenas tardes disculpe. me encontre un codigo javascript donde se puede mostrar un preview de una imagen subida desde un input file todo bien ...
  #1 (permalink)  
Antiguo 10/08/2014, 13:20
 
Fecha de Ingreso: noviembre-2008
Mensajes: 150
Antigüedad: 15 años, 5 meses
Puntos: 1
Pregunta modificacion a codigo javascript sobre un preview de una imagen

muy buenas tardes disculpe.
me encontre un codigo javascript donde se puede mostrar un preview de una imagen subida desde un input file
todo bien me muestra la imagen como la que hay en esta pagina

http://www.marcofbb.com.ar/wp-conten...oad-html5.html

cuando le das "Seleccionar Archivo" me muestra la imagen todo bien.
el problema es que si vuelvo a escojer otro archivo. me empieza a mostrar la otra imagen en lista.
y no yo deseo que no haga eso si no que cambie la que ya esta subida.
aqui esta el codigo. que me funciona bien. pero yo solo que me muestre sola 1 IMAGEN
y me gustaria saber si me pueden ayudar a entender el codigo y modificar. saludos

Código HTML:
Ver original
  1. <input type="file" id="files" name="files"/>
  2. <br>
  3. <output id="list-miniatura"></output>
  4.   function handleFileSelect(evt) {
  5.     var files = evt.target.files; // FileList object
  6.  
  7.     // Loop through the FileList and render image files as thumbnails.
  8.     for (var i = 0, f; f = files[i]; i++) {
  9.  
  10.       // Only process image files.
  11.       if (!f.type.match('image.*')) {
  12.         continue;
  13.       }
  14.  
  15.       var reader = new FileReader();
  16.  
  17.       // Closure to capture the file information.
  18.       reader.onload = (function(theFile) {
  19.         return function(e) {
  20.           // Render thumbnail.
  21.           var span = document.createElement('span');
  22.           span.innerHTML = ['<img class="thumb" src="', e.target.result,'" title="', escape(theFile.name), '"/><br />'].join('');
  23.           document.getElementById('list-miniatura').insertBefore(span, null);
  24.         };
  25.       })(f);
  26.  
  27.       // Read in the image file as a data URL.
  28.       reader.readAsDataURL(f);
  29.     }
  30.   }
  31.  
  32.   document.getElementById('files').addEventListener('change', handleFileSelect, true);

de antemano muchas gracias.!
  #2 (permalink)  
Antiguo 11/08/2014, 13:50
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: modificacion a codigo javascript sobre un preview de una imagen

En lugar de insertar la nueva imagen, asígnala como nuevo contenido.

Cambia esto:
Código Javascript:
Ver original
  1. document.getElementById('list-miniatura').insertBefore(span, null);

Por esto:
Código Javascript:
Ver original
  1. document.getElementById('list-miniatura').innerHTML = span.innerHTML;

O mejor aún, olvídate de span y realiza la asignación directamente:
Código Javascript:
Ver original
  1. reader.onload = (function(theFile) {
  2.     return function(e) {
  3.         document.getElementById('list-miniatura').innerHTML = '<img class="thumb" src="' + e.target.result + '" title="' + escape(theFile.name) + '"/><br />';
  4.     };
  5. })(f);

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Etiquetas: file, input
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 11:44.