Повторная многоразовая перезагрузка страницы
Пожалуйста, ответьте, как можно исправить данный баг:
Я делаю программное отправление данных формы с помощью 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, время: 01:37. |