Si usas jQuery? Mamadisimo.
Javascript a pelo? Algo mas rebuscado.
Supongamos:
<div id="d_1">
</div>
<div id="d_2">
</div>
<div id="d_3">
</div>
...
<div id="d_N">
</div>
Cuando se deben ocultar u mostrar? En un click por ejemplo en algun sitio? Check?
Supondré click en "algo".
jQuery:
$( "#algo" ).click(function(){
//te lo montas para preparar una variable con el numero del div a tratar. Tu sabrás como hacerlo, porque sabes como "activas" el hecho de ocultar.
//Supongamos que la tienes:
var num_div = .......
$( "div[id*=d_]" ).each(function(){
if( $(this).attr( "id" ) == 'd_'+num_div ){
$(this).show();
}else{
$(this).hide();
}
});
});
Por ejemplo. Hecho así de cabeza sin pensar mucho.
Tienes que ver donde clickas, o como activas el hecho de mostrar/ocultar.
Hay mas formas. Mas directas.
Con hasClass() o otros. O metiendolo todo en un DIV y hacer algo como $( "#div_padre > div" ) que seria todos los divs children del div contenedor (div_padre).
Etc... las opciones son limitadas, pero las hay a cantidades.
Si trabajas con javascript a pelo, tienes que tirar de "document.getElementByID( '...' )".
Y harias algo similar supongo:
function muestraUnoOcultaOtros(id, num_divs){
for(var i=0; i<num_divs; i++){
document.getElementById('d_'+i).visibility = 'hidden';
}
document.getElementById('d_'+id).visibility = 'visible';
}
O algo así.
Y claro, necesitas llamar la funcion en un "onclick" o algo así en algun punto, y como todo lo hacer via foreach, entiendo que mezclas con PHP, entonces en la llamada "onclick=muestraUnoOcultaOtros(x,y)", a X le darias el valor mediante PHP segun el div que quieres mostrar, y en Y, le darias una variable de tipo "contador" digamos segun las vueltas el foreach.
Hay mas maneras de hacerlo, pero así a botepronto, te presento estas.
Dime que te parece, y te tiro otro cable.
Saludos!
edit:
porcierto, si pasa por aqui Pollo o Beavis o alguien, a ver si haceis el puto favor de solucionar el parseado de strings de Media Vida, que algo como ) ", pero junto, provoca un smiley sin venir a cuento joder!