Foros del Web » Creando para Internet » Diseño web »

Menu en css activo

Estas en el tema de Menu en css activo en el foro de Diseño web en Foros del Web. Estoy haciendo un sitio web en el cual tengo un menu vertical a la izquierda hecho en css. Cada enlace del menu abre diferentes frames. ...
  #1 (permalink)  
Antiguo 14/07/2012, 07:49
 
Fecha de Ingreso: agosto-2011
Mensajes: 28
Antigüedad: 12 años, 8 meses
Puntos: 0
Menu en css activo

Estoy haciendo un sitio web en el cual tengo un menu vertical a la izquierda hecho en css. Cada enlace del menu abre diferentes frames. Ahora el problema que tengo es que quiero que cuando haga clic en algun enlace para abrir el frame el enlace quede activado. Ya intente hacer eso desde css con a:active pero cuando hago clic afuera se desactiva.

Espero respuestas. Gracias
  #2 (permalink)  
Antiguo 14/07/2012, 16:45
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Menu en css activo

usa javascript. o jquery

Código Javascript:
Ver original
  1. $('#boton1').addClass('active');

Código CSS:
Ver original
  1. .active{background:red;}
  #3 (permalink)  
Antiguo 14/07/2012, 21:46
 
Fecha de Ingreso: agosto-2011
Mensajes: 28
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Menu en css activo

Buenas, antes de nada muchisimas gracias por tomarte el tiempo en ofrecerme una posible solucion. Lamentablemente no me funciono lo que me dijiste, porque en realidad fui yo el que explico mal lo que necesito.

Lo que en realidad necesito es que cuando haga clic en un link del menu este quede "activo" y si hago clic en otro lado este no se desactive. Pero si hago clic en otro link del menu el link que estaba activo se desactive y al mismo tiempo se active el que cliquee recientemente. No se si me explique bien :)

Aqui el codigo CSS del menu:


#menu-lateral {
}

#menu-lateral ul {
}

#menu-lateral a {
margin: auto;
padding: 5px 0px 0px 10px;
display: block;
width: 180px;
height: 25px;
color: #999999;
text-align: left;
border-top: solid 1px #323232;
border-bottom: solid 1px #1B1B1B;
background: #282828;
}

#menu-lateral li {
display: block;
}

#menu-lateral a:hover {
color: #FFFFFF;
background-color: #1C1C1C;
background-position: right;
background-repeat: no-repeat;
background-image: url(images/menulateral.gif);
}


Y aqui el HTML:

<div id="menu-lateral">
<ul>
<li><a href="#">Niños</a></li>
<li><a href="#">Jovenes</a></li>
<li><a href="#">Adultos</a></li>
<li><a href="#">PET</a></li>
<li><a href="#">First Certificate</a></li>
<li><a href="#">CAE</a></li>
<li><a href="#">Proficiency</a></li>
<li><a href="#">Empresas</a></li>
</ul>
</div>


Espero tu respuesta pronto. Desde ya, muchas gracias.
  #4 (permalink)  
Antiguo 14/07/2012, 22:21
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Menu en css activo

bueno yo tengo algo así como lo que dices en http://comprar-web.com/bella ahí use eso del boton.

claro que ahi me faltó el evento click en si seria algo así:

Código Javascript:
Ver original
  1. $('#tags').click(function(){//asignamos el evento click al id del elemento
  2.         $('.top li').removeClass('top-button-current');auitamos la clase current a todos los li en mi caso
  3.         $(this).addClass('top-button-current');//añadimo la clase al evento clickado
  4.     });

rápido y facil
  #5 (permalink)  
Antiguo 14/07/2012, 22:49
 
Fecha de Ingreso: agosto-2011
Mensajes: 28
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Menu en css activo

Muchisimas gracias por responder tan rapido. Te voy a molestar con algo que a lo mejor te resulta imprudente de mi parte. ¿Podrias poner como iria el codigo Javascript en el HTML?, es que soy casi nulo en el tema de Javascript. Muchisimas gracias.
  #6 (permalink)  
Antiguo 15/07/2012, 01:00
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: Menu en css activo

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <title>Ejemplo funcional</title>
  3.     <style type="text/css">
  4.         ul{
  5.             list-style-type: none;
  6.         }
  7.         .top div{
  8.             display:none;
  9.             border:1px solid #666;
  10.             background-color: #DDD;
  11.             margin:20px;
  12.             padding:20px;
  13.         }
  14.         .top-button-current{
  15.             padding:5px;
  16.             background:#fe0000;
  17.             color:#fff;
  18.         }
  19.     </style>
  20.     <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
  21.     <script type="text/javascript">
  22.     $(document).ready(function(){
  23.         $('#tags').click(function(){
  24.             $('li').removeClass('top-button-current');
  25.             $(this).addClass('top-button-current');
  26.             $('.top > div').css('display', 'none');
  27.             $('.tags').css('display', 'block');
  28.         });
  29.        
  30.         $('#popular').click(function(){
  31.             $('li').removeClass('top-button-current');
  32.             $(this).addClass('top-button-current');
  33.             $('.top > div').css('display', 'none');
  34.             $('.posts-populares').css('display', 'block');
  35.         });
  36.        
  37.         $('#blog-archives').click(function(){
  38.             $('li').removeClass('top-button-current');
  39.             $(this).addClass('top-button-current');
  40.             $('.top > div').css('display', 'none');
  41.             $('.blog-archives').css('display', 'block');
  42.         });
  43.     });
  44.     </script>
  45. </head>
  46.     <ul>
  47.         <li class="top-button-current" id="blog-archives">texto</li>
  48.         <li id="tags">texto</li>
  49.         <li id="popular">texto</li>
  50.         <div class="top">
  51.             <div class="tags">tags</div>
  52.             <div class="blog-archives">Blog archives</div>
  53.             <div class="posts-populares">Posts populares</div>
  54.         </div>
  55.     </ul>
  56. </body>

ejemplo completo
  #7 (permalink)  
Antiguo 15/07/2012, 20:54
 
Fecha de Ingreso: agosto-2011
Mensajes: 28
Antigüedad: 12 años, 8 meses
Puntos: 0
Respuesta: Menu en css activo

Muchisimas gracias!!! Mil disculpas por la demora en agradecerte. Lo repito, MUCHISIMAS GRACIAS!!! Que pases bien :)

Etiquetas: css, html, javascript, jquery, mootools
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:16.