Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Estado "active" menu con 'removeClass' 'addClass'

Estas en el tema de Estado "active" menu con 'removeClass' 'addClass' en el foro de Frameworks JS en Foros del Web. Saludos a ver si alguien puede darme una mano, que estoy intentando hacer algo que parece simple pero no se en que fallo, no soy ...
  #1 (permalink)  
Antiguo 28/03/2011, 18:48
 
Fecha de Ingreso: marzo-2011
Mensajes: 6
Antigüedad: 13 años, 1 mes
Puntos: 0
Estado "active" menu con 'removeClass' 'addClass'

Saludos a ver si alguien puede darme una mano, que estoy intentando hacer algo que parece simple pero no se en que fallo, no soy experto con javascrip, pero seguro que es una tonteria. Quiero dar a mi menu el estado "active" he mirado en la web y encontre:

<script type="text/javascript">
$("li").click(function() {
$("li").removeClass(".active" ); // a todo <li> se le quita el estilo
$(this).addClass(".active" ); // se le añade el estilo al clickeado
});
</script>

añado este script y no funciona....este otro si cambia el fondo a magenta:

<!--MENU ACORDEON-->
<script type="text/javascript">
window.addEvent('domready', function(){
var accordion = new Accordion('h2.menusection', 'div.menusection', {
opacity: false,
onActive: function(toggler, element){
toggler.setStyle('color', '#000000'); // el color negro en la tipo no perdura
toggler.setStyle('background', '#FF0044'); // el fondo si
},

onBackground: function(toggler, element){
toggler.setStyle('color', '#000000');
toggler.setStyle('background', '#FFF');
}
}, $('accordion'));
});
</script>

Pero en realidad quiero que cambie unicamente el color de la tipografia, no se por que si funciona con el backgroud y no con la typo. Limpie el codigo lo mas que pude y se puede ver aca:

www.tripiando.co.cc/index_Menuclean.html

sus estilos:

www.tripiando.co.cc/estilos_menuclean.css

si alguien me puede dar una ayuda que llevo mucho tiempo buscado y no soluciono algo que pareciera ser tan simple...





saludos!!
  #2 (permalink)  
Antiguo 28/03/2011, 19:14
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Estado "active" menu con 'removeClass' 'addClass'

Que tal pixelado,

lo primero no te funciona porque es códig para jQuery y estas utilizando Mootools, con respecto a porque el color no te lo respeta es porque tenes una regla css de mas peso sobre el a, para solucionarlo deberias aplicarle el estilo directamente al a, algo asi:

Código Javascript:
Ver original
  1. ...
  2. onActive: function(toggler, element){
  3.   toggler.getElement('a.link').setStyle('color', '#000');
  4.   toggler.setStyle('background', '#FF0044');
  5. },
  6. onBackground: function(toggler, element){
  7.   toggler.getElement('a.link').setStyle('color', '#999');
  8.   toggler.setStyle('background', '#FFF');
  9. }
  10. ...

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 28/03/2011, 23:45
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Tema movido desde javascript
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 29/03/2011, 05:00
 
Fecha de Ingreso: marzo-2011
Mensajes: 6
Antigüedad: 13 años, 1 mes
Puntos: 0
Respuesta: Estado "active" menu con 'removeClass' 'addClass'

Hola masterpuppet Anotate un karma!!!
de verdad se que para el conoce algo resulta facil,
yo es que trabajo con CSS y HTMLs y aveces manipulo otros
codigos para cosas puntuales de una web
con mas o menos suerte.

Ya lo he probado y funciona, muchas gracias por tu pronta respuesta

saludos!

Etiquetas: css, javascript, removeclass, fondo, animados
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 11:25.