Иногда бывает нужно определить отсутствие пользователя в течении некоторого времени (например, чтобы поставить статус «Отошел»). Мы будем считать активность пользователя — перемещение указателя мыши, нажатие на клавиатуру и движение скрола мыши:
dleTimer = null; idleState = false; // состояние отсутствия idleWait = 2000; // время ожидания в мс. (1/1000 секунды) $(document).ready( function(){ $(document).bind('mousemove keydown scroll', function(){ clearTimeout(idleTimer); // отменяем прежний временной отрезок if(idleState == true){ // Действия на возвращение пользователя $("body").append("С возвращением!"); } idleState = false; idleTimer = setTimeout(function(){ // Действия на отсутствие пользователя $("body").append("Вы отсутствовали более чем " + idleWait/1000 + " секунд."); idleState = true; }, idleWait); }); $("body").trigger("mousemove"); // генерируем ложное событие, для запуска скрипта });