【发布时间】:2012-07-17 16:27:29
【问题描述】:
我有一些内容需要一段时间才能由 PHP 生成。同时,我想使用这个简单的 JS 技巧来显示“正在加载...”消息。一旦生成输出,该消息就会消失。
<p id="loading_msg">Loading...</p>
<h1>Hello</h1>
<?php
sleep(2); // This is the greedy function call
print '<p>This content definitely took a while to be generated !.</p>';
?>
<script type="text/javascript">
var e = document.getElementById("loading_msg");
e.style.display = "none";
</script>
问题是,它不是将所有内容发送到sleep(2); 然后阻塞,而是在所有页面生成之前等待,然后然后,一次性发送。它显然破坏了我的“正在加载...”消息的目的,因为它在 2 秒过去之前没有出现。关于为什么以及如何解决这个问题的任何想法?
【问题讨论】:
-
问题已经关闭,作为关于 output_buffering 的一个副本 - 但是这个问题是关于在服务器完成之前获取内容以在客户端呈现(暗示与输出缓冲相反)
标签: php javascript html