Можно ли сделать PressAnyKey для Веб-страницы?

kibi

Новичок
Можно ли сделать PressAnyKey для Веб-страницы?

Есть ли варианты следующего решенения для Веб-страницы?

если на странице не нажата любая кнопка, не нажат курсор мышки - то через 2 минуты например перейти на главную страницу...
Т.е. аналогия для обычных программ PressAnyKey
Но проблема в том, что количество кнопок и других элементов на странице не известно заранее..
думаю что надо JavaScript
таймер + обработчик нажатий
подскажите пожалуйста, может кто сталкивался с таким вопросом.

Или может сессии... ?
 

kruglov

Новичок
Сессии тут никаким боком (http://phpfaq.ru/sessions)

Можно повесить setTimeout на переход, который отменять через clearTimeout по onkeydown, onclick и onmousemove на body
 

kibi

Новичок
Автор оригинала: kruglov
Сессии тут никаким боком (http://phpfaq.ru/sessions)

Можно повесить setTimeout на переход, который отменять через clearTimeout по onkeydown, onclick и onmousemove на body
так у body вроде бы есть onLoad, onUnLoad только ?

а будет ли ловиться нажатие не только с body но и с всех элементов страницы ?
или надо на каждый навешивать ??
 

kibi

Новичок
Автор оригинала: kruglov
kibi
Эксперимент не смог ответить на ваш вопрос?
Может я что-то не так делаю:

<BODY onLoad="alert('OnLoad')"> - работает

<BODY onmousemove="alert('Clicked')"> - не работает
<BODY onClick="alert('Click')"> - не работает....

у Body же только 2 события... или я что-то не понимаю ?
 

kruglov

Новичок
оnclick и onmousemove на body у меня работает у MSIE, Firefox и даже в Опере.

<BODY onmousemove="alert('move')" onclick="alert('click')">
Обана
</body>

В чем тестируете?
 

kibi

Новичок
в Опере Ваш вариант не идет....
Я собрал вот такой вариант из разных кусков что нашел - работает..

-------
<SCRIPT>
var timerID = null;
var timerRunning = false;

if (document.layers) {
document.captureEvents(Event.MOUSEDOWN)
}
document.onmousedown = loadtimerMouse

document.onkeydown = loadtimerKey

function loadtimer() {
if(timerRunning) clearTimeout (timerID);
timerID = setTimeout("self.location ='http://www.phpclub.ru'",5000);
timerRunning = true;
}

function loadtimerMouse() {
if(timerRunning) clearTimeout (timerID);
timerID = setTimeout("self.location ='http://www.phpclub.ru'",5000);
timerRunning = true;
}

function loadtimerKey() {
if(timerRunning) clearTimeout (timerID);
timerID = setTimeout("self.location ='http://www.phpclub.ru'",5000);
timerRunning = true;
}
</SCRIPT>

<BODY onLoad="loadtimer()">
.....
 

kruglov

Новичок
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN)
}
- это сильно. Поддерживаете 4-ый нетскейп?
 
Сверху