首先显示主要内容,然后在加载mysql时显示菜单

时间:2014-01-04 19:02:36

标签: php mysql

我提出了这个想法,但我不知道从哪里开始。 我确定这不是什么新鲜事。

我有一个网站,其中1个菜单的加载非常繁重,因为它有一个非常复杂和大的查询。 我想要实现的是,当菜单加载某种进度条时,主页首先显示。

该网站采用PHP格式。菜单由:

调用
require('menu.php');

1 个答案:

答案 0 :(得分:0)

请使用JS和Ajax。首先,删除慢“require('menu.php');”从HTML中显示您的页面。然后一旦显示加载“require('menu.php');”使用ajax并在完成后将其写入您的页面。 检查这个答案:

Adding loading image while PHP script runs

你可以将php代码添加到不同的文件中显示加载图像然后调用此函数

来自上面的链接:

function Load()
{
    var xmlhttp;
    var url;

    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }

    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {           
            //(optional)do something with response: xmlhttp.responseText
            document.getElementById("area").innerHTML=xmlhttp.responseText;
            document.getElementById("loadingimage").src = "afterloading.gif";
        }
    }

    xmlhttp.open("GET","phpfile.php",true);
    xmlhttp.send();
}

此函数会转到您的javascript位置,然后在文档完成加载后用jquery调用它或

<body onload="Load()">

并在身体里放置类似

的东西
<img id="loadingimage" src="loading.gif"/>
<div id="area">...</div>