jQuery проверяйте MouseMover каждый x MS
Вопрос
Я использую функцию MouseMove ({}). Я хочу, чтобы эта функция MouseMove была названа, только если ее в последний раз называли по крайней мере 1 секунды назад. Я знаю, что могу использовать какой -то таймер и установить условие
if( cur_time - last_time > 1)
do_the_stuff();
- Есть ли лучший способ сделать это?
- Если нет, то какую функцию я должен использовать для получения cur_time (или для прохождения времени)?
Решение
Это звучит как хороший подход. Ваш код должен выглядеть примерно так:
var last_moved;
$(document).mousemove(function(e){
if (!last_moved || (e.timeStamp - last_moved > 1000)) {
do_the_stuff();
last_moved = e.timeStamp;
}
});
Видеть Рабочий пример на jsfiddle.
Другие советы
Нет, это кажется лучшим способом сделать это. Поместите это утверждение в MouseMove, и вы должны получить то, что вам нужно.
Не связан с StackOverflow