Foros del Web » Programando para Internet » Javascript »

Ocutal los demas div al hacer click

Estas en el tema de Ocutal los demas div al hacer click en el foro de Javascript en Foros del Web. Hola amigos como estais, Vereis tengo esta funcion en javascrit que lo que hace es mostrar y ocultar un serie de div bien, el problema ...
  #1 (permalink)  
Antiguo 04/01/2013, 06:00
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 2 meses
Puntos: 4
Ocutal los demas div al hacer click

Hola amigos como estais,


Vereis tengo esta funcion en javascrit que lo que hace es mostrar y ocultar un serie de div bien, el problema es solo quiero que un div este visible y que cuando se pulse sobre uno los demas se escondan con lo que solo va estar visible el que su pulse.


Código Javascript:
Ver original
  1. function toggleDivOL( elemID )
  2. {
  3.     var elem = document.getElementById( elemID );
  4.     if( elem.style.position != 'absolute' )
  5.     {
  6.         elem.style.position = 'absolute';
  7.         elem.style.left = '-4000px';
  8.     }
  9.     else
  10.     {
  11.         elem.style.position = 'relative';
  12.         elem.style.left = '0px';
  13.     }
  14. }


estos son los div que se muestran y ocultan:

Código PHP:
echo '<div id="'.$array['Nimagen'].'" class="testDiv">';
echo 
'</div>' 
y este es el link que hace la llamada


Código HTML:
<a  href="javascript:toggleDivOL('<?php echo $array['Nimagen'] ?>');" /></a> 


Tambien he encontrado este codigo pero no se si podria hacer dinamico:


Código HTML:
Ver original
  1. <script language="javascript" type="text/javascript">
  2. function mostrar(div)
  3.     {
  4.         document.getElementById('div1').style.display = 'none'; /* y repetis esto por cada div, o lo haces automatico */
  5.         document.getElementById('div2').style.display = 'none';
  6.         document.getElementById('div3').style.display = 'none';
  7.         document.getElementById(div).style.display = 'block'; /* mostras el que queres mostrar */
  8.     }
  9.  
  10. <style type="text/css">
  11.     * div { display: none; height: 100px; width: 100px; }
  12. </head>
  13.  
  14.  
  15. <a href="#"  onClick="mostrar('div1')">1</a>
  16. <a href="#"  onClick="mostrar('div2')">2</a>
  17. <a href="#"  onClick="mostrar('div3')">3</a>
  18.  
  19.  
  20.  
  21.     <div id="div1" style="background-color:red;"></div>
  22.     <div id="div2" style="background-color:green;"></div>
  23.     <div id="div3" style="background-color:blue;"></div>
  24. </body>



A ver si alguien sabe como se podria modificar para que funcionase de este modo

Un saludo amigos

Última edición por franjgg; 04/01/2013 a las 07:03
  #2 (permalink)  
Antiguo 04/01/2013, 08:43
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Ocutal los demas div al hacer click

se trata de posicionarlos y manipular su zIndex
Cita:
<script language="javascript" type="text/javascript">
var indice = 1;
function mostrar(div)
{
document.getElementById(div).style.zIndex = indice++;
document.getElementById(div).style.display = 'block'

}
</script>

<style type="text/css">
#cont {position:relative; top:0; left:0;}
#cont > div {display:none; height: 100px; width: 100px; position:absolute; top:0; left:0; }
</style>
</head>

<body>

<a href="#" onClick="mostrar('div1')">1</a>
<a href="#" onClick="mostrar('div2')">2</a>
<a href="#" onClick="mostrar('div3')">3</a>


<div id="cont">
<div id="div3" style="background-color:blue;"></div>
<div id="div2" style="background-color:green;"></div>
<div id="div1" style="background-color:red;"></div>


</div>
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #3 (permalink)  
Antiguo 04/01/2013, 08:43
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Ocutal los demas div al hacer click

Esto se ha explicado ya demasiado en FDW, te aconsejo que hagas una búsqueda más exhaustiva antes de postear

http://www.forosdelweb.com/f13/como-...9/#post4184080

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: funcion, php
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 13:27.