tengo un problemilla con las capas q estoy haciendo en una web;
he creado varias secciones (div) que se cargan en el mismo marco de modo que cuando el usuario pulsa algun boton se esconde la capa q estaba viendo (hidden) y puede ver la q ha pulsado (visible), hasta aqui bien (gracias a q usé las funciones xHide y xShow de cross-browser.com);
el problema es que la primera vez q se carga la web el marco aparece vacío, el marco donde aparece el contenido de las capas cuando pulsas el boton, esto es pq todas las capas tienen definida en su clase la propiedad visibility=hidden (era la unica manera de que funcionase como yo esperaba q lo haria ... tampoco se si estara muy correcto).
ahora estaba probando a hacer una funcion para cambiar la propiedad visibility a visible para solo una de las capas de modo que al cargar la web por primera vez la capa principal fuese visible, pero tampoco me aclaro muy bien de como hacerlo... ni de como ejecutar esa funcion (si es q esta bien hecha).
si despues de todo este rollo todavia teneis valor de echarle un vistazo al codigo que he desarrollado (como he podido pues estoy empezando ahora ) gracias a esta y otras webs de ayuda a los programadores os lo pego aqui.
Código PHP:
<script type='text/javascript' src='./javascript/x_core.js'></script>
<script type='text/javascript'>
var capa=portada;
function muestraOculta(capa1, capa2){
xHide(capa2);
xShow(capa1);
capa = capa1;
}
</script>
</head>
<div id="borde">
<div id="contenedor">
<div id="cabecera"><img src="images/cabecera'villadecalp'.gif" width="770" height="190" alt="Concentración tuning 'Villa de Calpe'" border="0"></div>
<div id="navegador">
<table>
<tr><td><a href="#" class="enlaceboton" onclick="muestraOculta(portada,capa)"> Portada</a> |
</td><td><a href="#" class="enlaceboton" onclick="muestraOculta(noticias,capa)"> Noticias</a> |
</td><td><a href="#" class="enlaceboton" onclick="muestra0culta(concentracion05,capa)"> Concentración 2005</a> |
</td><td><a href="#" class="enlaceboton" onclick="muestraOculta(anteriores,capa)"> Concentraciones anteriores</a> |
</td><td><a href="#" class="enlaceboton" onclick="muestraOculta(foro,capa)"> Foro</a> |
</td><td><a href="#" class="enlaceboton" onclick="muestraOculta(sobreNos,capa)"> Sobre AMSport</a> |
</td><td><a href="#" class="enlaceboton" onclick="muestraOculta(contacto,capa)"> Contacto</a>
</td></tr>
</table></div>
<div id="cuerpo">
<div id="portada" class="cuerpo"></div>
<div id="noticias" class="cuerpo"></div>
<div id="concentracion05" class="cuerpo"></div>
<div id="anteriores" class="cuerpo"></div>
<div id="foro" class="cuerpo"></div>
<div id="sobreNos" class="cuerpo"></div>
<div id="contacto" class="cuerpo">
<object type="text/plain" data="./include/contacto.txt"></object>
</div></div>
Código PHP:
function xHide(e){return xVisibility(e,0);}
function xShow(e) {return xVisibility(e,1);}
function xVisibility(e, bShow){
if(!(e=xGetElementById(e))) return null;
if(e.style && xDef(e.style.visibility)) {
if (xDef(bShow)) e.style.visibility = bShow ? 'visible' : 'hidden';
return e.style.visibility;
}
return null;
}
function xGetElementById(e){
if(typeof(e)!='string') return e;
if(document.getElementById) e=document.getElementById(e);
else if(document.all) e=document.all[e];
else e=null;
return e;}
function xDef(){
for(var i=0; i<arguments.length; ++i){
if(typeof(arguments[i])=='undefined') return false;
}
return true;}
la funcion muestraOculta la hice yo, asi q probablemente este mal o se pueda ampliar para conseguir algo mas funcional...
bueno, despues de todo este rollo y media hora aqui copiando y pegando estoy mareao , a ver si se entiende algo de lo q he escrito y alguien puede ayudarme
saludos