由于某种原因,这段代码不会在迭代之间暂停,我希望它在加载缩略图之间暂停一秒钟。我究竟做错了什么?
foreach ($media->data as $data) {
echo "<img src=\"{$data->images->thumbnail->url}\">";
sleep(1);
}
如果您希望生成的代码在终止脚本之前到达客户端,您可能必须强制刷新它:
foreach ($media->data as $data) {
echo "<img src=\"{$data->images->thumbnail->url}\">";
@ ob_flush();
@ flush();
sleep(1);
}
但这是非常愚蠢的,很可能会导致客户端出现格式问题。你为什么不像其他人一样一次发送整个页面?
或者为了更好地控制加载的内容和速度,请使用 JavaScript。
包含的代码是服务器端代码。它在服务器上运行,生成 html,然后将其发送到客户端。所以很可能你会看到的唯一效果是你的页面加载速度会更慢。
为了获得您想要的效果,您需要使用 javascript,它在用户的浏览器中运行,可以动态生成带有暂停和动画等效果的内容。
这种延迟只会发生在服务器上。页面和图像文件仍然需要下载到客户端并在那里呈现。如果您想要实际加载图像的东西,两者之间有延迟,您可能需要研究加载图像的 JavaScript 方法。
仅发生在sleep
服务器端(在输出到客户端计算机之前)。您需要通过 js 或 css3 选择器执行此操作
你最好的选择是使用 css3 选择器而不是 js,但你可以使用任何一个。
-webkit-transition: opacity 1s;
-moz-transition: opacity 1s;
transition: opacity 1s;