Мне интересно, существует ли способ преднамеренно замедлить загрузку страницы?
Я тестирую свои страницы HTML и PHP на моем локальном хосте прямо сейчас, и я хочу посмотреть, как мой загрузочный gif и т. Д. Будет работать, когда загрузка страницы будет медленнее.
Я понимаю, что это редкий запрос, поскольку большинство разработчиков только обеспокоены ускорением загрузки страниц, но я подумал, что может быть метод, используя javascript / jQuery или PHP, чтобы сделать что-то подобное для тестирования.
Спасибо за любую помощь!
Примечание. Я тестирую MAMP, так что это сервер Apache, работающий на Mac OS 10.7
Вы можете использовать функцию sleep($seconds)
php sleep($seconds)
чтобы замедлить загрузку страницы. Тем не менее, вам нужно будет отключить неявный сброс буфера вывода до «on» с помощью ob_implicit_flush(true);
если вы хотите, чтобы что-либо было отправлено в браузер пользователя до того, как страница будет обработана. В противном случае ваша страница не будет иметь никакого содержимого до тех пор, пока она не будет загружена. Вызов сна один не будет делать трюк.
Попробуйте Deelay.me :
<img src="http://img.ruphp.com/testing/image.gif">
Deelay.me – прокси-сервер задержки для веб-ресурсов. Вы можете использовать его со своими изображениями / стилями / сценариями, чтобы включить их время загрузки.
Это то, что я хотел бы попробовать: Использовать php-ресурс как источник изображения:
<img src="images/gifLoager.php" />
в gifLoader.php, прочитайте свой файл изображения, выведите его байтом по байту с задержкой в цикле.
$fp = fopen( $path, 'rb'); while(!feof($fp)) { print(fread($fp, 1024)); flush(); Sleep(1); } fclose($fp);
Не забудьте правильно установить заголовки перед выдачей двоичных данных.
Referrences:
http://stackoverflow.com/questions/1563069/stream-binary-file-from-mysql-to-download-with-php http://php.net/manual/en/function.sleep.php http://www.gamedev.net/topic/427622-php-and-file-streaming-script-with-resume-capability/
UPDATE 2015-04-09 Используйте Chrome 'Device Mode': этот инструмент имеет функцию дросселирования сети, которая позволяет вам видеть, как ваша страница может отображаться на устройстве с низкой пропускной способностью сети. Он имеет множество других функций, которые позволяют эмулировать функции на различных устройствах, таких как размер экрана и сенсорный экран.
У Мусы есть правильная идея. Лучший способ проверить медленную загрузку страницы – использовать инструменты разработчика Chrome. Выберите вкладку сети, а затем щелкните раскрывающееся меню, в котором указано «Без дросселирования». Затем измените страницу на желаемую скорость.
Этот способ превосходит использование функции сна, потому что вам не нужно возиться с каким-либо кодом, а затем забыть его вынуть. Если вы хотите изменить скорость, просто измените уровень дросселирования и настройте.
Для получения дополнительной информации о дросселировании проверьте документы .
Вы можете использовать sleep () :
<?php // Delays for 10 seconds. sleep(10); ?> ... html here ...
Вызов sleep()
в вашем PHP-коде для задержки запроса на сервер.
Немного JS setTimeout может сделать трюк
setTimeout(function() { // Delayed code in here alert('You waited 5 seconds to see me'); // Waits 5 seconds, then alerts this }, 5000); // 5000 = 5 seconds
вы можете использовать неаккуратный локальный веб-прокси, чтобы замедлить ваше соединение (он находится в JAVA, поэтому он, вероятно, будет работать на вашей машине разработки. Возможно, вы также захотите отключить mod_deflate для целей тестирования, если хотите, чтобы ваш браузер реагировал на медленные Загрузка HTML (например, таблицы HTML с динамическим размером и т. Д.)
Также см. Этот вопрос на webmasters.stackexchange.com