Ver Mensaje Individual
  #3 (permalink)  
Antiguo 29/08/2014, 15:50
Alextedicehola
 
Fecha de Ingreso: junio-2014
Ubicación: Andalucía
Mensajes: 23
Antigüedad: 9 años, 10 meses
Puntos: 0
Respuesta: Calcular cuanto tiempo pasa el cursor sobre un elemento

Cita:
Iniciado por Alexis88 Ver Mensaje
Con el método hover y el objeto [URL="http://www.w3schools.com/jsref/jsref_obj_date.asp"][inline]Date[/inline][/URL] te basta. Solo necesitas tomar el tiempo al momento de colocar el cursor del mouse sobre el elemento (primer callback), tomar el tiempo al momento de retirar el cursor del mismo (segundo callback) y restar el último tiempo con el primero.

Código Javascript:
Ver original
  1. var time1, time2;
  2.  
  3. $("#id_elemento").hover(function(){
  4.     time1 = new Date().getTime();
  5. }, function(){
  6.     time2 = new Date().getTime();
  7.     console.log(((time2 - time1) / 1000).toFixed()); //Los segundos transcurridos
  8. });

La división entre 1000 la hago porque el método getTime devuelve el tiempo en milésimas de segundo. Con dicha división, el tiempo resultante será expresado en segundos. Si deseas que se visualicen los segundos con milésimas, no apliques el método toFixed.

Saludos
Hola gracias por responder tan rápido.
Tengo una duda, bueno te pongo el problema que intento solucionar. Quiero capturar el tiempo que el cursor esta sobre un elemento mientras sigue sobre el. Y con una condición comprobar que el tiempo sobrepasa un limite fijado. Esto lo hago porque tengo un menú de navegación y al pasar sobre un <li> realiza una animación. El problema es que cuando paso muchas veces el cursor y muy rápido el menú se vuelve loco y realiza muchas veces las animaciones.
Con el tiempo de espera intento evitar que ocurra esto.
Pero no consigo encontrar la formula para que funcione con lo que tu me has propuesto.
¿Tienes alguna idea u otra forma de solucionar esto?.

Gracias de nuevo, un saludo.