Как имитировать длительную загрузку документа?

#javascript #html #browser

#javascript #HTML #браузер

Вопрос:

Я хочу провести несколько тестов для кода JavaScript, который запускается до полной загрузки документа и после этого.

Есть ли какая-либо возможность отложить загрузку собственного документа (например, на 10 секунд)? Таким образом, я буду четко видеть, когда выполняются эффекты ДО загрузки документа и ПОСЛЕ.

Спасибо.

Было бы здорово иметь кроссбраузерное решение.

Комментарии:

1. точки останова в отладчиках должны помочь вам регулировать работу самого JS.

2. Если вы можете использовать серверные скрипты вместо статического HTML, есть способы приостановить отправку содержимого (например, функция sleep PHP ).

3. Как я могу задержать процесс загрузки документа? Я использую asp.net на сервере не начнется отправка документа, пока не будет завершен весь цикл генерации страницы. Не так ли? Вероятно, я могу выполнить асинхронную обработку страницы, но не уверен, действительно ли это работает так, как я ожидаю…

Ответ №1:

Firefox Throttle может помочь вам замедлить загрузку страницы и, возможно, даст вам то, что вы ищете.

Комментарии:

1. На самом деле, моя страница слишком маленькая (100-200 байт), чтобы замедлить загрузку документа, используя манипуляции с пропускной способностью…

Ответ №2:

Для меня 100.000 абзацев ( <p>Test</p> ) выполнили свою работу. Firefox 9.0 занят в течение нескольких секунд.

Ответ №3:

Один из способов сделать это — просто замедлить весь входящий трафик на ваш компьютер, установив максимальную пропускную способность на некоторое значение v. небольшое, например, несколько КБ в секунду. Если затем вы разместите свой файл на веб-сервере и нажмете на внешний URL, чтобы получить его (веб-сервер может быть запущен на вашем компьютере разработчика, вам просто нужно не забыть использовать внешний URL для файла, а не через localhost или 127.0.0.1 ). Самое приятное в этом то, что по умолчанию это кроссбраузерный.

Я не уверен, какой код используется в Windows или Linux, но если вы используете Mac OS X, вы можете использовать следующий код, чтобы установить скорость загрузки на 2 КБ / сек.:

     sudo ipfw pipe 1 config bw 2KByte/s
    sudo ipfw add 100 pipe 1 tcp from any to me 80
  

Затем, когда вы закончите тестирование, выполните:

     sudo ipfw delete 100
  

чтобы снять ограничение.

Примечание: Я не могу приписать этот код заслуге, поскольку он основан на примере из книги Джонатана Старка.