|
|
|
|
|
для: АЯ
(22.10.2009 в 19:26)
| | Спасибо! | |
|
|
|
|
|
|
|
для: Eugene77
(22.10.2009 в 17:30)
| | >"Вы можете перечислить причины, которые могут приводить к возникновению такого временного разрыва?"
Например, использование окошка alert - покуда клиент не закроет окошко, программа остановит выполнение кода.
Или, например, использование метода setTimeout ().
Или, например, вызов загрузки внешнего файла в src встроенного ифрейма с навеской на этот ифрейм обработчика события onload.
Или, например, посылка вызова по технологии AJAX с последующим ожиданием возврата респонса.
И тому подобное...
>"Вы уверены, что знаете полный список этих причин?"
А зачем мне знать ПОЛНЫЙ список?
Вполне достаточным будет проанализировать лишь те скриптовые решения, кои применены в коде и которые, как следует из механизма их работы, могут породить временные разрывы. | |
|
|
|
|
|
|
|
для: АЯ
(20.10.2009 в 21:09)
| | >Javascript выполняется браузером последовательно, оператор за оператором, строчка за строчкой.
>И делать это он будет такое время, которое это ему необходимо.
>Если только нет искусственно созданного временного разрыва.
Вы можете перечислить причины, которые могут приводить к возникновению такого временного разрыва?
Вы уверены, что знаете полный список этих причин? | |
|
|
|
|
|
|
|
для: Eugene77
(20.10.2009 в 20:40)
| | Javascript выполняется браузером последовательно, оператор за оператором, строчка за строчкой.
И делать это он будет такое время, которое это ему необходимо.
Если только нет искусственно созданного временного разрыва.
Если вы обращаетесь к посторонним URL, то вы были просто обязаны "завязать" свои функции таким образом, что разрыв во времени появился. Тогда да - тогда переадресацию необходимо вешать на событие окончания работы самой последней функции.
Вам легко это будет сделать.
Вы можете поставить куки в самом конце работы вашего "сложного скрипта".
А потом СРАЗУ ЖЕ эти куки прочитать.
Если прочтённое из кук совпадёт с тем, что вы и хотели поставить, то вот тогда делайте переадресацию.
Правда, я не знаю, что вам посоветовать для случая, если "не совпадет"? :-)
Вы вообще можете в конце каждого важного этапа работы скрипта добавлять по одному символу в какую-то изначально пустую переменную.
Например:
1) вызвали URL - прописали букву Д
2) "вытащили" что-то из этого URL - добавили У
3) подготовили данные для кук - дополнительно букву Р
4) поставили куки - добавьте А
...
ну и так далее.
Если в итоге получившееся совпадет с тем, что я о некоторых думаю, то, значит, - у вас всё в порядке. :-) | |
|
|
|
|
|
|
|
для: АЯ
(19.10.2009 в 22:24)
| | >Время постановки кук - это как "миг по сравнению с вечностью", если сравнивать его со временем, необходимым браузеру для закрытия одного документа и посылки HTTP-запроса к новому файлу.
Это у меня сомнений не вызывает.
>
>При любом размере записываемых кук (а возможный максимум - это 64 кБ) любой компьютер (даже с самым медленно-древним винчестером) ВСЕГДА успеет их записать до перехода к другому URL в окне.
Это выглядит верно если подгружаемый скрипт только лишь записывает куки.
А что если он долго выполняется?
Обращается к другим URL, а лишь потом записывает свои куки?
Да и сам он какое-то время загружается...
Никаких тут накладок не может произойти?
ВСЕГДА успеет их записать до перехода к другому URL в окне
Возможно, переход (загрузка новой страницы) длится долго, но запрос к серверу формируется быстро. Не сформируется ли этот запрос прежде, чем будет поставлена кука? | |
|
|
|
|
|
|
|
для: Eugene77
(19.10.2009 в 19:44)
| | Время постановки кук - это как "миг по сравнению с вечностью", если сравнивать его со временем, необходимым браузеру для закрытия одного документа и посылки HTTP-запроса к новому файлу.
При любом размере записываемых кук (а возможный максимум - это 64 кБ) любой компьютер (даже с самым медленно-древним винчестером) ВСЕГДА успеет их записать до перехода к другому URL в окне. | |
|
|
|
|
|
|
|
для: АЯ
(19.10.2009 в 10:49)
| | Ну, поделитесь со мной своей уверенностью. Объясните почему вы считаете что вот это:
<!-- Здесь вы можете подключить один, два,.. десять, двадцать,.. сто, двести,.. тысячу, две тысячи...
исполняемых JS-файлов <script src="URL"></script> -->
|
Успеет закончить ставить все куки до того, как начнёт выполняться вот это:
<script>
var s = document.location.href;
document.location.href = s.substring (0, s.lastIndexOf ('.')) + '.php';
</script>
|
| |
|
|
|
|
|
|
|
для: Eugene77
(19.10.2009 в 10:34)
| | Ну это же не ромашка "любит-не любит".
Если у пользователя разрешены куки, то проблем не будет. | |
|
|
|
|
|
|
|
для: АЯ
(18.10.2009 в 14:32)
| | А не может быть так, что один раз сработает, а другой раз - нет? | |
|
|
|
|
|
|
|
для: Eugene77
(18.10.2009 в 12:07)
| | >"Непонятно как убедиться в надёжности такой схемы"
Поставить куки в HTML-файле, а прочитать их - в PHP.
Проблемы не вижу.
Совсем не вижу. | |
|
|
|
|