Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/05/2007, 09:30
Avatar de K-Yezaad
K-Yezaad
 
Fecha de Ingreso: octubre-2005
Mensajes: 140
Antigüedad: 19 años, 5 meses
Puntos: 3
Información Problema con "acordeon" Javascript

Tengo un script que al darle clic a un elemento, hace que un div de altura 0 se expanda (un acordeon). hasta eso, funciona perfectamente, pero si le doy clic otra vez, en medio de la animacion cuando se expande, se detiene, y se queda "trabado".

Este es el codigo javascript:
Código:
function show(elemento, fin){
  h = document.getElementById(elemento).style.height;
  setInterval(
  function(){
    h++; if(h < fin){
      document.getElementById(elemento).style.height = h+'px';
    }
   }, 5)
}
El html:
Código HTML:
<a href="#oculto" onclick="show('oculto', 150)">Clic aqui</a>
<a href="#oculto" onclick="show('oculto', 150)">Clic aqui tambien</a>
<div id="oculto">
    texto oculto aqui
</div> 
Por alguna razon solo funciona cuando declaro el estilo en una hoja aparte, o en tags style. El estilo que uso es:
Código:
#oculto{
  height:0px;
  overflow:hidden;
}