有意拖慢HTML / PHP页面加载testing
我很好奇,如果有一种方法有意减缓页面加载?
我现在在我的本地主机上testing我的HTML和PHP页面,我想看看我的加载GIF等将如何执行页面加载速度较慢。
我意识到这是一个罕见的请求,因为大多数开发人员只关心加快页面加载,但我想可能有一种方法,使用JavaScript / jQuery或PHP,做这样的事情为了testing的目的。
谢谢你的帮助!
注意:我正在testingMAMP,所以这是在Mac OS 10.7上运行的Apache服务器
您可以使用PHP的sleep($seconds)
function来减缓页面加载速度。 但是,你需要通过ob_implicit_flush(true);
将隐式输出缓冲区 ob_implicit_flush(true);
为“on” ob_implicit_flush(true);
如果您希望在页面完成处理之前将任何内容发送到用户的浏览器。 否则,您的页面将不会有任何内容,直到完成加载。 单独调用睡眠并不能解决问题。
尝试Deelay.me :
<img src="http://deelay.me/1000/http://examplesite.com/image.gif">
Deelay.me是一个Web资源的延迟代理。 您可以将它与您的图像/样式/脚本一起使用,以减less加载时间。
这是我会尝试:使用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“设备模式”:此工具具有networking抑制function,可让您查看网页在networking带宽较慢的设备上的呈现方式。 它具有许多其他function,可以让您模拟屏幕大小和触摸等各种设备上的function。
穆萨有正确的想法。 testing缓慢页面加载的最好方法是使用Chrome的开发人员工具。 selectnetworking选项卡,然后点击“无节stream”的下拉菜单。 然后将页面更改为所需的速度。
这种方式优于使用睡眠function,因为您不必篡改任何代码,然后记得把它拿出来。 如果你想改变速度,只需更改限制级别,然后设置。
有关节stream的更多信息, 请查看文档 。
你可以使用sleep() :
<?php // Delays for 10 seconds. sleep(10); ?> ... html here ...
在您的PHP代码中调用sleep()
来延迟对服务器的请求。
一些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
你可以使用简单的本地networking代理来减慢你的连接速度(这是用JAVA语言编写的,所以它可能会在你的开发机器上运行)你也许还想closuresmod_deflate来进行testing,如果你想让浏览器响应慢HTML加载(例如,dynamic大小的HTML表格等)
另外,请在webmasters.stackexchange.com上查看此问题