Foros del Web » Programando para Internet » Jquery »

Efecto rollover en menu con Jquery?

Estas en el tema de Efecto rollover en menu con Jquery? en el foro de Jquery en Foros del Web. Hola muuuy buenas! Queria hacer un efecto en el menu de la web que estoy haciendo para un cliente que hiciera lo siguiente: http://jquery-menu.com/es/ejemplos-c...qgrid-php.html No ...
  #1 (permalink)  
Antiguo 13/05/2011, 02:39
 
Fecha de Ingreso: abril-2006
Mensajes: 152
Antigüedad: 18 años, 7 meses
Puntos: 22
Efecto rollover en menu con Jquery?

Hola muuuy buenas!

Queria hacer un efecto en el menu de la web que estoy haciendo para un cliente que hiciera lo siguiente:

http://jquery-menu.com/es/ejemplos-c...qgrid-php.html

No me interesa el menu desplegable, si no que lo que me interesa es el efecto brillo que se mueve dependiendo de donde se stue el ratón.

¿Alguien sabe como se llama ese efecto o de donde puedo descargar un ejemplo o tutorial?

Muuuchas gracias de antemano :)
  #2 (permalink)  
Antiguo 13/05/2011, 05:23
 
Fecha de Ingreso: abril-2006
Mensajes: 152
Antigüedad: 18 años, 7 meses
Puntos: 22
Respuesta: Efecto rollover en menu con Jquery?

Bueno, veo que me han movido el tema de foro. Pido disclpas por haberlo puesto donde no era :)
  #3 (permalink)  
Antiguo 13/05/2011, 05:25
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: Efecto rollover en menu con Jquery?

El efecto se llama lavalamp y el que estas mostrando es este.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #4 (permalink)  
Antiguo 13/05/2011, 09:43
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 15 años
Puntos: 65
Respuesta: Efecto rollover en menu con Jquery?

yo hice esto si te sirve

lo que hace en la función mover es tomar el ancho del li, el ancho de div #efecto, restar los valores y dicidirlo por 2 asi obtengo los limites o lo que sobra a la izquierda y derecha del div #efecto, al sumarlo con la posición izquierda de un li sumo ese valor y queda posicionado en el centro del li

no se si se entiende :S

podes darle estilos a tu gusto y el div #efecto podes ponerle una imagen con fondo transparente o iluminado


Código Javascript:
Ver original
  1. <html>
  2.     <head>
  3.         <title>Ejemplo</title>
  4.         <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
  5.         <script>
  6.  
  7.             $( function(){
  8.                    
  9.                     lista = $('#menu li');
  10.  
  11.                     lista.mouseover( function(){
  12.                         mover($(this));
  13.                     }).click( function(){
  14.                         lista.removeClass('seleccionado');
  15.                         $(this).addClass('seleccionado');
  16.                     });
  17.                    
  18.                     $('#menu ul').mouseleave( function(){
  19.                         mover($('#menu li.seleccionado'));
  20.                     });
  21.  
  22.                     $('#menu li.seleccionado').trigger('mouseover');
  23.  
  24.                     function mover(li){
  25.                         var tamanoLi = li.outerWidth();
  26.                         var tamanoEfecto = $('#efecto').outerWidth();
  27.                         var sobrante = (tamanoLi - tamanoEfecto) / 2;
  28.                         var posLeft = li.offset().left;
  29.                         var mover = posLeft + sobrante;
  30.                         $('#efecto').stop().animate({'left':mover}, 500);
  31.                     }
  32.  
  33.             });
  34.  
  35.  
  36.  
  37.     </script>
  38.  
  39.     <style>
  40.  
  41.     body {
  42.         margin:50px
  43.     }
  44.  
  45.     #menu{
  46.         background:#ccc;
  47.         height:50px;
  48.         width:500px;
  49.     }
  50.  
  51.     #menu ul {
  52.         list-style:none;
  53.         margin:0;
  54.         padding:0;
  55.     }
  56.  
  57.     #menu li {
  58.         float:left;
  59.         padding:10px;
  60.         width:100px;
  61.         text-align:center;
  62.         position:relative;
  63.         cursor:pointer;
  64.     }
  65.  
  66.     #efecto {
  67.         position:absolute;
  68.         width:50px;
  69.         height:50px;
  70.     }
  71.  
  72.     #menu .seleccionado{
  73.         font-weight:600
  74.     }
  75.  
  76.     </style>
  77.  
  78. </head>
  79. <body>
  80.  
  81.     <div id="menu">
  82.         <div id="efecto">
  83.             <img src="http://www.gloriacalero.com/wp-content/uploads/2010/07/button-9458.png" />
  84.         </div>
  85.         <ul>
  86.             <li class="seleccionado">Uno</li>
  87.             <li>Dos</li>
  88.             <li>Tres</li>
  89.             <li>Cuatro</li>
  90.         </ul>
  91.     </div>
  92.  
  93. </body>
  94. </html>
  #5 (permalink)  
Antiguo 13/05/2011, 11:45
 
Fecha de Ingreso: abril-2006
Mensajes: 152
Antigüedad: 18 años, 7 meses
Puntos: 22
Respuesta: Efecto rollover en menu con Jquery?

Muchas gracias por decirme como se llama masterpuppet, y por el link, de hecho ese link lo habia encontrado... pero lo habia perdido xD. Asique muchas gracias.

Y bueno, tambien muchisimas gracias a Dany_s por ese codigo, es practicamente lo que busco, solo una duda.

En mi caso queria hacerlo para un menú lateral, no vertical, que código habria uqe cambiar en el que me mandaste? estuve mirando pero no se bien que habria que modificar. :(
  #6 (permalink)  
Antiguo 13/05/2011, 17:05
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 15 años
Puntos: 65
Respuesta: Efecto rollover en menu con Jquery?

sacas el float left de la lista, el tamaño de alto del div #efecto lo podés poner del mismo tamaño que el de las opciones asi ubicás el dibujo donde quieras para no tener que andar calculando entonces lo decis que se mueva a la posición top del li

Código Javascript:
Ver original
  1. <html>
  2.     <head>
  3.         <title>Ejemplo</title>
  4.         <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script>
  5.         <script>
  6.  
  7.             $( function(){
  8.  
  9.                     lista = $('#menu li');
  10.  
  11.                     lista.mouseover( function(){
  12.                         mover($(this));
  13.                     }).click( function(){
  14.                         lista.removeClass('seleccionado');
  15.                         $(this).addClass('seleccionado');
  16.                     });
  17.  
  18.                     $('#menu ul').mouseleave( function(){
  19.                         mover($('#menu li.seleccionado'));
  20.                     });
  21.  
  22.                     $('#menu li.seleccionado').trigger('mouseover');
  23.  
  24.                     function mover(li){
  25.                         var mover = li.offset().top;
  26.                         $('#efecto').stop().animate({'top':mover}, 500);
  27.                     }
  28.  
  29.             });
  30.  
  31.  
  32.  
  33.     </script>
  34.  
  35.     <style>
  36.  
  37.     body {
  38.         margin:50px
  39.     }
  40.  
  41.     #menu{
  42.         background:#ccc;
  43.         width: 150px
  44.     }
  45.  
  46.     #menu ul {
  47.         list-style:none;
  48.         margin:0;
  49.         padding:0;
  50.     }
  51.  
  52.     #menu li {
  53.         padding:10px;
  54.         width:100px;
  55.         height: 50px;
  56.         text-align:center;
  57.         position:relative;
  58.         cursor:pointer;
  59.     }
  60.  
  61.     #efecto {
  62.         position:absolute;
  63.         width:50px;
  64.         height:50px;
  65.         margin-left: 35px;
  66.     }
  67.  
  68.     #menu .seleccionado{
  69.         font-weight:600
  70.     }
  71.  
  72.     </style>
  73.  
  74. </head>
  75. <body>
  76.  
  77.     <div id="menu">
  78.         <div id="efecto">
  79.             <img src="http://www.gloriacalero.com/wp-content/uploads/2010/07/button-9458.png" />
  80.         </div>
  81.         <ul>
  82.             <li class="seleccionado">Uno</li>
  83.             <li>Dos</li>
  84.             <li>Tres</li>
  85.             <li>Cuatro</li>
  86.         </ul>
  87.     </div>
  88.  
  89. </body>
  90. </html>


porqué no mejor usar el plugin que te pasó masterpuppet?

hay varios ejemplos http://nixboxdesigns.com/projects/jq.../original.html
  #7 (permalink)  
Antiguo 14/05/2011, 03:35
 
Fecha de Ingreso: abril-2006
Mensajes: 152
Antigüedad: 18 años, 7 meses
Puntos: 22
Respuesta: Efecto rollover en menu con Jquery?

Muchas gracias por la explicacion Dany_s. Voy a probarlo a ver que tal. Y como bien dices, el link que me pasó masterpuppet tambien esta genial, pero me conozco, y el tuyo lo habia probado y me funcionaba bien, entonces para ir sobre seguro, de todas formas me quedo con las dos opciones :)

Mil gracias a los dos!!

Etiquetas: efecto, rollover
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 10:40.