Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/09/2011, 22:01
Avatar de ColdFusion
ColdFusion
 
Fecha de Ingreso: octubre-2008
Ubicación: Tocoa, Colon Honduras C.A.
Mensajes: 419
Antigüedad: 15 años, 6 meses
Puntos: 9
Menu en jquery

tengo este codigo

Código Javascript:
Ver original
  1. var ultima_caja = null;
  2. $("a#mnu_desplegable").click(function() {          
  3. var btn = $(this),posicion = btn.position(),cadena_accion=null,btn_name=btn.attr('name');
  4. var caja=$('#contenedor_'+btn_name);
  5.  
  6.  
  7. if (caja.attr('id') != ultima_caja) {
  8.     $('a#mnu_desplegable').removeClass('activo');
  9.     $("div.n_contenedor").hide();
  10.     ultima_caja = null;
  11. }
  12.  
  13. if (caja.css('display') === 'block') {
  14. $('a#mnu_desplegable').removeClass('activo');
  15. caja.hide();
  16. ultima_caja = null;
  17. }else{
  18. caja.css({top: (posicion.top+btn.height()), left: posicion.left});
  19. caja.show();
  20. btn.addClass('activo');
  21. ultima_caja ='#contenedor_'+btn_name;
  22.  
  23. }
  24.  
  25. return false;
  26.  
  27. });
  28.  
  29. $("div.n_contenedor").mouseup(function() {
  30. return false
  31. });
  32.  
  33. $(document).mouseup(function(e) {
  34.                 if($(e.target).parent("a#mnu_desplegable").length==0) {
  35.                     $("a#mnu_desplegable").removeClass("activo");
  36.                     $("div.n_contenedor").hide();
  37.                     ultima_caja=null;
  38.                 }
  39. });

Hasta aqui, este codigo muestra una div al hacer click en el enlace y pone una clase 'activo' al enlace.. si se da click a otro enlace con id '#mnu_desplegable' oculta el div anterior y quita la clase 'activo' al enlace y al mismo tiempo activa el nuevo..

Si se hace click sobre alguna otra parte de la web oculta el menu desplegado..

lo unico que me falta lograr es que cuando un menu este desplegado y se clic sobre el mismo, este se oculte.

Alguna ayuda! :) Gracias!