Foros del Web » Programando para Internet » Javascript »

Problema al insertar imagen con javascript

Estas en el tema de Problema al insertar imagen con javascript en el foro de Javascript en Foros del Web. Tengo una div en la cual al presionar un boton se agrega una imagen y un texto. El codigo es el siguiente: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código ...
  #1 (permalink)  
Antiguo 24/02/2011, 19:59
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 7 meses
Puntos: 1
Problema al insertar imagen con javascript

Tengo una div en la cual al presionar un boton se agrega una imagen y un texto. El codigo es el siguiente:
Código Javascript:
Ver original
  1. var divProgress = document.getElementById('progress');
  2.     divProgress.innerHTML = '<img src="ajax-loader.gif"/><br/>EL proceso de carga puede durar varios minutos.<br/> (aprox. 1 minuto por imagen, aunque puede variar dependiendo de la conexion a internet. No cierre la pagina.<br/>';

y tengo una div llamado progress, el tema es que funciona bien, se agrega el texto, y la imagen, pero la imagen no se muestra, es decir me doy cuenta que se agrego porque aparece en el codigo, pero no se muestra. Y la imagen esta subida al hosting en la misma carpeta que el index.

Este es el codigo que me genera:
<div id="progress">
<img src="ajax-loader.gif" name="progress"> <br>EL proceso de carga puede durar varios minutos.<br> (aprox. 1 minuto por imagen, aunque puede variar dependiendo de la conexion a internet. No cierre la pagina.<br></div>

como veran, deberia mostrar la imagen, pero solo es visible el texto. Alguien tiene idea porque puede ser que pase esto?

Saludos y gracias.
  #2 (permalink)  
Antiguo 24/02/2011, 21:21
Avatar de AlejandroMtzRmz  
Fecha de Ingreso: febrero-2011
Mensajes: 81
Antigüedad: 13 años, 3 meses
Puntos: 4
Respuesta: Problema al insertar imagen con javascript

Y si en lugar de innerHTML usas createElement y appendChild? revisa este codigo, lo probe y funciono bien (use el logo de google como imagen):

Código Javascript:
Ver original
  1. <script>
  2. function gen(){
  3. var divProgress = document.getElementById('progress');
  4. var imagen = document.createElement('img');
  5. var texto = document.createElement('span');;
  6.  
  7. imagen.setAttribute('src','http://www.google.com/images/logos/ps_logo2.png');
  8. imagen.setAttribute('id','ajaxLoader');
  9.  
  10. texto.innerHTML = '<br/>EL proceso de carga puede durar varios minutos.<br/> (aprox. 1 minuto por imagen, aunque puede variar dependiendo de la conexion a internet. No cierre la pagina.<br/>';
  11.  
  12. // la siguiente condicion es para que no se agregue otra imagen si se vuelve a dar click en el boton
  13.  
  14. if(document.getElementById('ajaxLoader') == undefined){
  15. divProgress.appendChild(imagen);
  16. divProgress.appendChild(texto);
  17. }
  18. }
  19. </script>
  20.  
  21. <button onclick="gen()">Click</button>
  22.  
  23. <div id="progress"></div>

O tambien puedes simplemente cambiar el fondo de "progress" por ajax-loader.gif

Última edición por AlejandroMtzRmz; 24/02/2011 a las 21:26
  #3 (permalink)  
Antiguo 25/02/2011, 03:42
(Desactivado)
 
Fecha de Ingreso: enero-2011
Mensajes: 293
Antigüedad: 13 años, 4 meses
Puntos: 4
Respuesta: Problema al insertar imagen con javascript

que varvaro nose que en que usaras eso pero me gustaria que des una idea que escript mas chulo pero me parece que nose en usarlo dime tu.
  #4 (permalink)  
Antiguo 25/02/2011, 06:27
 
Fecha de Ingreso: enero-2007
Mensajes: 146
Antigüedad: 17 años, 3 meses
Puntos: 16
Respuesta: Problema al insertar imagen con javascript

Pese a que el código del amigo AlejandroMtzRmz puede ser útil para otros menesteres o para avanzar en nuevas cosillas, me temo que tu problema es un problema de rutas.
Podrías decirme en qué carpeta contienes ese código JS que ejecutas? Vamos, en qué carpeta está el fichero que contiene ese JS.
Piensa que aunque estés en index.php, si éste invoca a un javascript en la dirección "javascript/fichero.js", y es fichero.js el que contiene el código que pones para mostrar la imagen, intentaría cargarla de la ruta "javascript/imagen.jpg".
En el ejemplo que te comento, bastaría con llamar a la imagen con "../imagen.jpg".


Trabajar con rutas relativas sería lo ideal para no tener problemas de éste tipo :)
  #5 (permalink)  
Antiguo 25/02/2011, 08:29
 
Fecha de Ingreso: febrero-2011
Ubicación: Avellaneda, Buenos Aires
Mensajes: 39
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Problema al insertar imagen con javascript

Wesorz, creo que estás equivocado, no importa en que carpeta esté el archivo Javascript, lo que importa es donde ese el html o php y la imágen.
Si el HTML esta en la misma carpeta que la imágen, la forma correcta de llamar al gif es src="ajax-loader.gif"
  #6 (permalink)  
Antiguo 25/02/2011, 09:09
 
Fecha de Ingreso: enero-2007
Mensajes: 146
Antigüedad: 17 años, 3 meses
Puntos: 16
Respuesta: Problema al insertar imagen con javascript

Cita:
Iniciado por esjuanma Ver Mensaje
Wesorz, creo que estás equivocado, no importa en que carpeta esté el archivo Javascript, lo que importa es donde ese el html o php y la imágen.
Si el HTML esta en la misma carpeta que la imágen, la forma correcta de llamar al gif es src="ajax-loader.gif"
En efecto, llevas razón (que lo edite algún moderador para no confundir, por favor). Fue ida de cabeza mía, al confundir eser problema con el CSS, donde la ruta si es relativa a la hoja de estilo.

Aún así, sigo pensando que es un problema de rutas. Sería tan fácil como cambiar ajax-loader.gif por el nombre del fichero que ejecuta ese JS, a ver si realmente se muestra la imagen. Por ejemplo, si debería mostrarse en http://localhost/index.php, probar poniendo http://localhost/ajax-loader.gif.

Otra solución opción para descartar problemas de rutas es comprobar los logs del Apache a ver si tenemos algún 404 con esa imagen.
  #7 (permalink)  
Antiguo 25/02/2011, 09:48
Avatar de aguila_393  
Fecha de Ingreso: septiembre-2007
Ubicación: Argentina
Mensajes: 406
Antigüedad: 16 años, 7 meses
Puntos: 1
Respuesta: Problema al insertar imagen con javascript

Compañeros ya pude solucionar el problema. No se bien porque sucedio pero el tema era que tenia que cargar la imagen al momento de cargar toda la web, asique lo que hice fue crear un div con visibilty hidden y ahi cargar la imagen, y despues ya funciono con exactamente el mismo codigo que tenia yo.

Alguien sabe si siempre hay que hacer esto o porqeu podria pasar?

Etiquetas: Ninguno
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:00.