Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Mostrar y ocultar menu

Estas en el tema de Mostrar y ocultar menu en el foro de Javascript en Foros del Web. Buenos dias. Al dar a un enlace quiero que se muestre un submenu y al pichar ora vez en el enlace se oculte. He conseguido ...
  #1 (permalink)  
Antiguo 16/08/2015, 04:30
 
Fecha de Ingreso: noviembre-2009
Mensajes: 90
Antigüedad: 14 años, 5 meses
Puntos: 0
Mostrar y ocultar menu

Buenos dias.

Al dar a un enlace quiero que se muestre un submenu y al pichar ora vez en el enlace se oculte. He conseguido que aparezca pero no ocultarlo. Este es la funcion.

Código:
<script type="text/javascript">
        var stado=1;
        function submenu(){
            if(stado==1)
            {
                var sm = document.createElement("div");
                sm.id ="smenu";
                var cargarmenu ="<ul id='sm2'> <li><a href=''>Preferencias</a></li>";
                cargarmenu +="<li><a href=''>Salir</a></li></ul>";
                sm.innerHTML=cargarmenu;
                document.getElementById("m").appendChild(sm); 
                stado=0;
            }
            else
            {
                document.getElementById("m").removeChild(sm);
                stado=1;
            }
        }
    </script>
  #2 (permalink)  
Antiguo 16/08/2015, 16:07
 
Fecha de Ingreso: diciembre-2011
Mensajes: 98
Antigüedad: 12 años, 4 meses
Puntos: 29
Respuesta: Mostrar y ocultar menu

Eso es por que no declaraste la variable sm donde tocaba, y por lo tanto esta se elimina al finalizar el if, para solucionarlo, simplemente declara sm donde declaras stado, así sm no se borrará, entonces no tendrás ningún problema al eliminarlo posteriormente.
Fíjate (líneas 2 y 6):

Código Javascript:
Ver original
  1. var stado=1;
  2. var sm;
  3.         function submenu(){
  4.             if(stado==1)
  5.             {
  6.                 sm = document.createElement("div");
  7.                 sm.id ="smenu";
  8.                 var cargarmenu ="<ul id='sm2'> <li><a href=''>Preferencias</a></li>";
  9.                 cargarmenu +="<li><a href=''>Salir</a></li></ul>";
  10.                 sm.innerHTML=cargarmenu;
  11.                 document.getElementById("m").appendChild(sm);
  12.                 stado=0;
  13.             }
  14.             else
  15.             {
  16.                 document.getElementById("m").removeChild(sm);
  17.                 stado=1;
  18.             }
  19.         }


Suerte
  #3 (permalink)  
Antiguo 17/08/2015, 07:25
 
Fecha de Ingreso: noviembre-2009
Mensajes: 90
Antigüedad: 14 años, 5 meses
Puntos: 0
Respuesta: Mostrar y ocultar menu

Funciona perfecto. Muchas gracias

Etiquetas: funcion, html
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 20:56.