Вы можете сохранить действующую переменную, используя mousemove
события (при условии, что пользователь не оставляет мышь на странице).Если эта переменная (вероятно, временная метка) не была обновлена в течение x секунд, можно сказать, что страница не активна, и приостановить выполнение любого сценария.
Пока вы не выполняете много обработки в событии bodyХендлер, с тобой должно быть все в порядке.Он должен просто обновить переменную, а затем выполнить скрипт, опрашивающий ее через определенный интервал для выполнения обработки / проверки (скажем, каждые 1000 мс).