Повторная многоразовая перезагрузка страницы
Пожалуйста, ответьте, как можно исправить данный баг:
Я делаю программное отправление данных формы с помощью submit при загрузки страницы, до того как пользователь начал работу со страницей, такой код: <body onLoad="setTimeout('document.form.submit.click()', 1000)" > Но действие повторяется повторно много раз. Как сделать, чтобы выполнялся и страница работала дальше в своём режиме? |
Цитата:
Но это больше претензии к самому обработчику клика на элементе формы... Цитата:
|
А у меня его и нет. Есть один но он не для него. Напишите пожалуйста, какой должен быть для него.
Другой, для других целей, вот такой:
function mouseClick(){
var pageX = 'pageX' in event ? event.pageX : event.clientX + document.documentElement.scrollLeft;
var pageY = 'pageY' in event ? event.pageY : event.clientY + document.documentElement.scrollTop;
if (document.getElementById('mouseX').value==''){
document.getElementById('mouseX').value = pageX*1000/document.body.clientWidth;
document.getElementById('mouseY').value = pageY*1000/document.body.clientHeight;}
document.getElementById('hiddenX').value = document.body.clientWidth+1;
document.getElementById('hiddenY').value = document.body.clientHeight+1;
} </script> |
Думал стандартного обработчика достаточно, а действительно его не достаточно мне.
Мне нужно до загрузки выполнить вот эти два присваивания:
document.getElementById('hiddenX').value = document.body.clientWidth+1;
document.getElementById('hiddenY').value = document.body.clientHeight+1;
|
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<input id="hiddenX">
<input id="hiddenY">
<script>
document.getElementById('hiddenX').value = document.body.clientWidth+1;
document.getElementById('hiddenY').value = document.body.clientHeight+1;
</script>
<!-- остальной код разметки -->
</body>
</html>
|
Так не работает. Первое что я попробовал это так и сделать. Дело в том что, как видно, я использую скрытые поля. Они должны передаться на сервер, ещё до начала работы клиента. Вот что я делаю:
<html onclick="mouseClick();"> ...
<script>
function mouseClick(){
var pageX = 'pageX' in event ? event.pageX : event.clientX + document.documentElement.scrollLeft;
var pageY = 'pageY' in event ? event.pageY : event.clientY + document.documentElement.scrollTop;
if (document.getElementById('mouseX').value==''){
document.getElementById('mouseX').value = pageX*1000/document.body.clientWidth;
document.getElementById('mouseY').value = pageY*1000/document.body.clientHeight;}
document.getElementById('hiddenX').value = document.body.clientWidth+1;
document.getElementById('hiddenY').value = document.body.clientHeight+1;
}
</script>
Я передаю данные после клика на странице пользователем, а надо чтобы данные полей отправлялись на сервер до того как пользователь увидел окно страницы, или по таймауту 1000 мс. Однако все решения имеют неприемлемый недостаток в виде постоянной перезагрузки страницы, не один ответ и не одна моя попытка ещё не сумела остановить перезагрузки после первой таковой. |
мне интересно, для чего все эти манипуляции?
|
Средствами PHP нельзя узнать разрешение монитора пользователя.
Или покажите как эту задачу решить ajax-ом. w.tetradka33.ru Цитата:
|
| Часовой пояс GMT +3, время: 00:05. |