[javascript] Как определить что юзер ничего не делает в течении ...

timefim

N минут?

kruzer25

Запустить таймер на N минут на запуск метода, который обработает бездействие пользователя.
И на каждое действие пользователя - сбрасывать этот таймер.

timefim

>И на каждое действие пользователя - сбрасывать этот таймер.
Вот этот момент самый интересный. Как подписаться на все действия пользователя?

pilot

делаешь таймер.
вешаешь на document обработчики mousemove, click & keypress — они должны сбрасывать таймер.

uncle17

вешаешь на document обработчики mousemove
а я вот мышку двигаю лишь в исключительных случаях

timefim

А кто нибудь может объяснить почему

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<frameset>
<frame src="http://ya.ru" onload="test">
</frameset>
</html>


<script type="text/javascript">

function test
{
alert("test");
}
</script>

падает с ошибкой на onload="test" Object expected?

hwh2010

падает с ошибкой на onload="test" Object expected?
Потому что нельзя <script> (да и всё остальное) класть вне <html>. Также советую более ответственно отнестись к выбору DOCTYPE, раз уж ты его пишешь. Сейчас его URL не соответствует его названию, и оба они не подходят для содержимого.

timefim

Потому что нельзя <script> (да и всё остальное) класть вне <html>.
Перенос скрипта внутрь не помог.
С body все работает.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<body onload="test"/>


</html>

<script type="text/javascript">

function test
{
alert("test");
}
</script>

Dasar

падает с ошибкой на onload="test" Object expected?
гипотеза:
потому что он ищет функцию test в самом фрейме, а не на верхней странице.

hwh2010

Перенос скрипта внутрь не помог.
А почему мне помог? Я положил в <head>, тестил 9-й Оперой.
Ещё раз: меня не удивишь неработающим скриптом, если страница имеет некорректную структуру. Пока что у тебя:
1) DOCTYPE — Transitional, а нужен Frameset
2) <script> лежит фуй знает где
3) onload="test" вместо onload="javascript:test" (впрочем, это мелочи, наверное)
Кроме того
0) мы не знаем, в какой браузер валится.
Нижеследующий код у тебя работает?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script type="text/javascript">
function test
{
alert("test");
}
</script>
</head>
<frameset>
<frame src="http://ya.ru" onload="test">
</frameset>
</html>

kruzer25

1) Если пользователь заснул на какой-то кнопке, onKeyPress не произойдёт.
2) Что гораздо более важно - если пользователь читает какую-нибудь простыню и крутит страницу колесом - ты это не отловишь.

timefim

Нижеследующий код у тебя работает?
Да, все заработало, я пробовал только между
</frameset>
</html>
поставить.
Всем спасибо.

hwh2010

1) Если пользователь заснул на какой-то кнопке, onKeyPress не произойдёт.
Раз заснул — значит ничего не делает :)
2) Что гораздо более важно - если пользователь читает какую-нибудь простыню и крутит страницу колесом - ты это не отловишь.
Чем бы не крутил — отловлю

slonishka

бля, как же все эти навороченные джаваскрипт-сайты с примерами кода на <вставьте свой любимый язык-для-веб> у меня тормозят!
Оставить комментарий
Имя или ник:
Комментарий: