Foros del Web » Programando para Internet » Javascript »

Traer una foto en un div

Estas en el tema de Traer una foto en un div en el foro de Javascript en Foros del Web. Buenas a todos tengo el siguiente codigo que me carga dentro de un div una pagina html... con un boton @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código HTML: Ver ...
  #1 (permalink)  
Antiguo 18/10/2012, 15:39
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 17 años, 3 meses
Puntos: 7
Pregunta Traer una foto en un div

Buenas a todos tengo el siguiente codigo que me carga dentro de un div una pagina html... con un boton

Código HTML:
Ver original
  1. <script type="text/javascript">
  2.     function ejec(pagina){
  3.    
  4.        
  5.     var conexion;
  6.     if (window.XMLHttpRequest){
  7.         conexion = new XMLHttpRequest();
  8.     }else{
  9.           conexion=new ActiveXObject("Microsoft.XMLHTTP")
  10.     }
  11.   conexion.onreadystatechange=function(){
  12.       if(conexion.readyState==4 && conexion.status==200){
  13.     document.getElementById("midiv").innerHTML=conexion.responseText;
  14.   }
  15.   }
  16.     conexion.open("POST",pagina,true);
  17.     conexion.send();
  18.     }
  19.  
  20. <a href="#" onclick="ejec('01.html')">SOLO TEXTO</a>
  21.  
  22.  
  23.  
  24. <div class="texto_t1" id="midiv"></div>   --->> aca carga el archivo 01.html..
  25. <div class="texto_2" id="midiv_1"></div>   --->> aca necesito una imagen
Si preciono el boton me trae al div "midiv" la pagina 01.html lo que no se como hacer ahora para que me traiga la pagina 01.html y una imagen que esta en una carpeta a otro div llamdo midiv_1 tocando el mismo boton..

Muchas gracias de antemano saludos a todos
fede
  #2 (permalink)  
Antiguo 18/10/2012, 19:04
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Traer una foto en un div

Hay que pensar un poco más !!!!
de la misma forma en que usauste "pagina" como variable, cambias de capa con una variable también

function ejec(pagina,capa){

y cuando hacés el innerHTML en lugar de poner el nombre de la capa pones la variable

luego en el evento onclick, llamás la función 2 veces,
Código Javascript:
Ver original
  1. onclik="ejec('nombre_archivo','nombre_capa'); ejec('nombre_archivo','nombre_capa');"
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 20/10/2012, 08:58
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 17 años, 3 meses
Puntos: 7
Pregunta Respuesta: Traer una foto en un div

Hola.!!! muchas gracias por contestar,
me sale mas o menos bien.. hice lo que dijiste.
Código Javascript:
Ver original
  1. function ejec(pagina,imgcapa){
  2. .........
  3. ........    
  4.      document.getElementById("midiv").innerHTML=conexion.responseText;
  5.      document.getElementById("midiv_1").innerHTML=imgcapa;
  6.  }
  7.   }
  8.     conexion.open("POST",pagina,imgcapa,true);
  9. ....
  10. ...
el boton:

Código HTML:
Ver original
  1. onclick="ejec('tratamientos/01.html','fede.jpg');ejec('tratamientos/alisado.html','fede.jpg')">boton1 </a></li>

los div
Código HTML:
Ver original
  1. <div class="centro_img" id="midiv_1"></div>
  2. <div class="texto_t1" id="midiv"></div>


cuando preciono el boton, me trae al div "midiv", la pagina 01.html.. de 10. y en el segundo div "midiv_1", me trae la palabra fede.jpg...

hice lo siguiente:

Código HTML:
Ver original
  1. document.getElementById("midiv_1").innerHTML=<img src='/img/imgcapa'>;

pero no funciona..

gracias por tu tiempo,

saludos
fede
  #4 (permalink)  
Antiguo 20/10/2012, 09:26
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Traer una foto en un div

mi amigo, no te funciona porque estás haciendo cualquier cosa, si tus capas son
midiv y midiv_1, ¿se puede saber porque pasas como parámetro el nonbre de una imagen?

Yo te diría que antes de seguir te des una vuelta por
http://librosweb.es

__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #5 (permalink)  
Antiguo 20/10/2012, 09:48
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 17 años, 3 meses
Puntos: 7
Pregunta Respuesta: Traer una foto en un div

Hola, estoy leyendo los libros de ajax,

Mira al tocar el boton paso el nombre de la pagina que quiero que se cargue en el div "midiv", y en otro div quiero que se cargue una iamgen en el div "midiv_1", si yo le paso el nombre de la capa, como busco o encuentro la imagen para esa capa, por eso puse el nombre de la imagen..

en concreto al tocar el boton, traigo alisado.html, y quiero traer una imagen al segundo div..

espero que se entienda.. y enserio que estoy leyendo el libro, es puro javascript al principio, y queria hacer este codigo asi voy aprendiendo.

se agradece mucho la informacion que ustedes dan enserio que muy bueno,

aca esta mi primer proyecto, fijate en tratamientos y te daras cuenta lo que estoy buscando..

http://www.quodigital.com/carina/_WEB/index1.html

Se agradece mucho tu tiempo, siempre lo digo, gracias.
saludos
fede
  #6 (permalink)  
Antiguo 20/10/2012, 10:05
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Traer una foto en un div

A ver...
te lo explico pero a partir de ahora, los manuales por favor

archivo a.html contiene el texto "hola"
archivo b.html contiene el texto fede.jpg

tenés capa a y capa b y queres caragar a.html en capa a y b.html en capa b


onclick="ejec('a.html','a');ejec('b.html','b')">bo ton1 </a></li>


Es decir, nombre de archivo y nombre de capa, ambos encerrados entre comillas
Eso va a provocar en que tus divs a parezcan los textos
hola y fede.jpg respectivamente, por que? porque Ajax solo envía texto en su respuesta, si queres cargar una imagen, tu archivo b.html debería contener
<img src="fede.jpg" width="200" height="200"/>, el navegador procesará ese texto y ejecutará el html resultando la imagen visible
Se entiende.

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #7 (permalink)  
Antiguo 20/10/2012, 12:28
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 17 años, 3 meses
Puntos: 7
Pregunta Respuesta: Traer una foto en un div

Hola.. no hay caso, lo hice como me dijiste..

en la funcion ó en la conexion esta el error supongo..

aca dejo codigo alomejor es una tontera...

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     function ejec(pagina,capa){
  3.    
  4.  
  5.     var capa;
  6.     var conexion;
  7.     if (window.XMLHttpRequest){
  8.         conexion = new XMLHttpRequest();
  9.     }else{
  10.           conexion=new ActiveXObject("Microsoft.XMLHTTP")
  11.     }
  12.   conexion.onreadystatechange=function(){
  13.       if(conexion.readyState==4 && conexion.status==200){
  14.      document.getElementById("a").innerHTML=conexion.responseText;
  15.      document.getElementById("b").innerHTML=capa;
  16.  
  17.  }
  18.   }
  19.     conexion.open("POST",pagina,capa,true);
  20.     conexion.send(); //
  21.     }
  22. </script>
  23. </head>
  24.  
  25. <body>
  26.  
  27. <li><a href="#" onclick="ejec('tratamientos/alisado.html','a');ejec('tratamientos/01.html','b')">ALIZADO DEFINITIVO</a></li>
  28.  
  29.  
  30. <div class="centro_img" id="b"></div>
  31. <div class="texto_t1" id="a"></div>

y en mi archivo 01.html

Código HTML:
Ver original
  1. <img src="fede.jpg" width="181" height="448" />

Saludos y muchas gracias.!!!

Fede
  #8 (permalink)  
Antiguo 20/10/2012, 12:51
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 5 meses
Puntos: 1567
Respuesta: Traer una foto en un div

Si eso está mal decididamente

uno pasa parámetros a la función para hacerlo más dinámico

todo esto está mal ya que desvirtuás el uso de un parámetro

document.getElementById("a").innerHTML=conexion.re sponseText; document.getElementById("b").innerHTML=capa;

, 'a' y 'b' ya no deben ser 'a' y 'b', ya que esos valores se pasan a la función, ahora serán la variable capa

después has puesto esto
var capa;
con lo que redefinís é indefinis la variable
fianlmente, para este tipo de carga usá GET y no POST

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2.    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4.  
  5. <script type="text/javascript">
  6. //<![CDATA[
  7.    function ejec(pagina,capa){
  8.  
  9.    var conexion;
  10.    if (window.XMLHttpRequest){
  11.        conexion = new XMLHttpRequest();
  12.    }else{
  13.          conexion=new ActiveXObject("Microsoft.XMLHTTP")
  14.    }
  15.  conexion.onreadystatechange=function(){
  16.      if(conexion.readyState==4 && conexion.status==200){
  17.     document.getElementById(capa).innerHTML=conexion.responseText;
  18.  
  19. }
  20.  }
  21.    conexion.open("GET",pagina,capa,true);
  22.    conexion.send(); //
  23.    }
  24. //]]>
  25. </head>
  26. <ul>
  27. <li><a href="#" onclick="ejec('alisado.html','a');ejec('01.html','b')">ALIZADO DEFINITIVO</a></li>
  28. </ul>
  29. <div class="centro_img" id="b"></div>
  30. <div class="texto_t1" id="a"></div>
  31. </body>
  32. </html>

la función se llama 2 veces, aunque esté en el mismo evento, pero de forma independiente, por lo que solo hace falta

document.getElementById(capa).innerHTML=conexion.r esponseText;

una sola vez y no dos.
De esta forma podés reusar la función en mucho links de la página, sin tocar la script y solo modificando los valores en el onclick

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #9 (permalink)  
Antiguo 20/10/2012, 14:14
Avatar de fedefrankk  
Fecha de Ingreso: agosto-2007
Mensajes: 871
Antigüedad: 17 años, 3 meses
Puntos: 7
Respuesta: Traer una foto en un div

Hola.!!
Se agradece mucho la informacion,

http://www.quodigital.com/carina/_WEB/index1.html

me voy a poner a leer, es mas la anciedad que todo..

enserio se agradece mucho, no quiero molestrate mas.

muchos saludos
fede

Etiquetas: foto, html, botones, tracker
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 18:20.