Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/11/2011, 03:19
Avatar de Hugo_Euan
Hugo_Euan
 
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años
Puntos: 71
Respuesta: como llamar div id y ocultar

Hola leo_search1

una de las técnicas para lograr cargar fragmentos de páginas es mediante el uso de Ajax... esto requiere JavaScript... otra tecnica similar es Xajax... que para el caso viene siendo lo mismo pero implementado desde PHP....
en Google puedes encontrar mucha información al respecto.. incluso en los foros de JavaScript... puedes encontrar bastante informacion sin necesidad de crear un nuevo tema pues ya hay bastantes posteados al respecto... :D fuera de eso.. de momento no recuerdo otros metodos para cargar fragmentos de paginas con PHP

ahora bien.. con respecto al codigo que no te funciona... te doy unas pautas.. para que corrijas los errores....

1.- los elementos deben tener un ID (identificador) único por lo que si tienes:

<div id="layer"><p><img alt="" height="32" src="http://files.tupeliculaonline.webnode.es/200000100-dde29dedd0/filmes.png" /> con el link</p>
</div>


y

<div id="layer" style="display:none;">Contenido oculto</div>

el id "layer" se répite y JavaScript solo trabajará con 1, tambien notemos que el segundo div ya lo tienes oculto por default....

2.- esta línea de código obj.style.display = (obj.style.display=='none') ? 'block' : 'none';
es similar al if

por lo que si convertimos esa línea en if.. queda así

Código Javascript:
Ver original
  1. if(obj.style.display = (obj.style.display=='none')){
  2.    'block';
  3. }else{
  4.    'none'
  5. }

en cualquiera de las dos maneras... la sintaxis está mal....

debido a que....
1.- aquí... estas asignando... no estas comparando.... obj.style.display = (obj.style.display=='none')

por lo que puedo ver en tu codigo... la máquina hace este proceso....
primero se cumple lo que está dentro del parentesis.... es decir...
si obj.style.display = 'none' (si la visibilidad del objeto es igual a none) se devuelve el resultado... en este caso por tratarse se 2 divs con igual ID se selecciona el primero... por lo que el resultado de esa comparacion es.... FALSE despues asignas ese valor a obj.style.display de esa manera el resultado siempre es FALSE
ahora.... despues de la supuesta evaluación.... solo tienes 'none' o 'block' cuando en realidad.. tienes que asignarlo para que puede establecerce el valor....

para que tu código funcione tiene que ser de esta manera...

1.- los ID deben ser únicos....

<div id="ShowHide" style="display:none;">Contenido que se muestra y se oculta</div>

2.- la condición quedaría así....

if(obj.style.display == 'block'){
obj.style.display = 'none';
}else{
obj.style.display = 'block';
}

si juntamos el código queda como sigue en el ejemplo...


Código Javascript:
Ver original
  1. <html>
  2. <head>
  3. <title>PRUEBA OCULTAR / MOSTAR</title>
  4. <script>
  5.            
  6.     function SHOWHIDE(){
  7.         var myDiv = document.getElementById("ShowHide");
  8.         if(myDiv.style.display == "none"){
  9.             myDiv.style.display = "block";
  10.         }else{
  11.             myDiv.style.display = "none";  
  12.         }
  13.     }
  14. </script>
  15. </head>
  16. <body>
  17.     <div id="ShowHide">
  18.         CONTENIDO QUE SE MUESTRA U OCULTA....
  19.     </div>
  20.     <div id="BtnContainer">
  21.         <input type="button" onclick="SHOWHIDE();" value="Mostrar / Ocultar Div" />
  22.     </div>
  23. </body>
  24. </html>

Espero que te sea de utilidad...

SALUDOS y ÉXITO.....
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!