答案 0 :(得分:3)
你需要使用Javascript,而不是PHP。
PHP是一种服务器端语言,因此一旦输出发送到浏览器,它就无法改变用户体验。
尝试这样的事情,使用身体的visibility: hidden
从头开始隐藏它。然后,一旦页面加载(我认为),onload()
将被触发,然后将其设置为visibility: visible
<body style="visibility:hidden" onload="this.style.visibility = 'visible' ">
这里更大的问题是为什么哦为什么!这只是意味着用户必须等待更长时间才能开始使用您的网站?它不是一个大的站点,它没有大量的Js库需要在用户开始使用该站点之前加载。
答案 1 :(得分:3)
我可以提出你不喜欢的建议吗?
如果您真的希望自己的页面显示得更快,那么请减少JavaScript噱头。您包含 13 JavaScript文件,并且大部分时间加载都会丢失,无法初始化。
更重要的是,没有JavaScript的用户会完全破坏您的网页。
答案 2 :(得分:1)
请注意,以任何方式使用javascript可能不适用于每个访问者完全相同。您应该使用跨浏览器的JS引擎,如jQuery或MooTools。
这样,您至少可以尝试跨浏览器有效。
其次,由于我已经说过,我不建议你使用jakenoble给你的解决方案。如果用户因任何原因禁用了JS,他将永远无法看到您的页面。
如果您希望已禁用JS的用户查看您的网站,则必须使用JS隐藏和显示您的网页。使用整页覆盖可能是一种很好的方法,但一定要检查你的页面是否仍然有效,而不需要激活JS。
e.g。您可以将CSS代码写入标记中,如果用户已禁用JS,则会隐藏覆盖并显示页面。
一些代码示例
<body class="body">
<div class="overlay">
<!-- Your page content -->
</div>
</body>
<script type="text/javascript">
$(document).ready(function(){
$(".overlay").css("visibility", "hidden");
$(".body").css("visibility", "visible");
});
</script>
<noscript>
<style type="text/css">
.body { visibility: visible; }
.overlay { visibility: hidden; }
</style>
</noscript>
答案 3 :(得分:0)
你实际上需要CSS,你必须放一个隐藏内容的整页覆盖(也许它会显示“加载”以使用户意识到页面正在加载),然后隐藏onload
以便它的内容下面。看看the solution here
答案 4 :(得分:0)
实际上你可以通过使用Ajax来实现这一点。
考虑是否必须加载index.php只需编写body标记并在body load上调用Ajax函数并在body标记内部获取Ajax响应。使用此练习将花费两倍的时间来加载页面。
答案 5 :(得分:0)
简短回答,请勿延迟
首先,我会反对它。我们生活在互联网上一个节奏非常快的社区。如果你花很长时间来展示网站(或者用户感觉没什么事情发生),他们可能会离开。这将对你想要完成的事情产生不利影响。
最好问:如何加快网站的网页加载速度?
更好的问题是How do I speed up my website?
以下是一些可以帮助您的建议。请遵循以下准则以提高性能。 http://developer.yahoo.com/yslow/help/