在加载页面时,如何使用ajax将php包含加载到页面中

在加载页面时,如何使用ajax将php包含加载到页面中,php,javascript,jquery,ajax,include,Php,Javascript,Jquery,Ajax,Include,我有一个php include,它需要一段时间才能加载,因为php需要获取大量数据。我不想让整个网页在等待这个包含时加载变慢,那么如何使用ajax加载这个包含呢?我不希望通过点击按钮触发ajax,我只希望它在页面加载时加载include,这样,如果您查看下面的示例,在inlude.php仍在加载时,会显示“更多html内容” <html> <head> </head> <body> Some html content <scr

我有一个php include,它需要一段时间才能加载,因为php需要获取大量数据。我不想让整个网页在等待这个包含时加载变慢,那么如何使用ajax加载这个包含呢?我不希望通过点击按钮触发ajax,我只希望它在页面加载时加载include,这样,如果您查看下面的示例,在inlude.php仍在加载时,会显示“更多html内容”

<html>
<head>
</head>
<body>
    Some html content
    <script>
        Ajax load 'include.php';
     </script>
    Some more html content
</body>
</html>

一些html内容
Ajax加载“include.php”;
更多的html内容

如果您使用jQuery,您可以使用他们的一个ajax调用从include.php加载html。例如,您可以使用该函数

例如:

<div id="content"></div>

<script>
$(document).ready(function() {
    $("#content").load("/yourpath/include.php");
});
</script>

$(文档).ready(函数(){
$(“#content”).load(“/yourpath/include.php”);
});

使用jquery,在DOM就绪后(呈现之前)加载php


$(函数(){
$(“#include”).load(“include.php”);
});

如果不使用jQuery,可以使用document.onload触发AJAX函数。 我从来没有尝试过这样做,因为大多数PHP都是闪电般的快,我担心如果页面只是部分加载会发生什么。您可以使用document.ready来避免这种情况,但您只是在等待页面加载。 请记住,通过HTTP,每个浏览器和每个服务器的连接都是有限的,因此您可能会发现这最终并没有加快任何速度

我使用了一些非常技术性的页面,有时候它们需要0.06秒才能加载,尽管通常加载速度更快。这是在一个非常便宜和恶劣的服务器上进行的,它的资源极其匮乏。用户不能将此视为延迟,因为下载内容所需的时间比PHP提供内容所需的时间长得多

问问自己:

  • 列表项为什么我的代码要花这么长时间才能加载
  • 列表项我需要包含所有代码吗
  • 列表项有更好的方法吗
  • 列表项我应该删除不常使用的代码来分离include(或者使用PHP中的类批量加载工具)
也许简化代码会更好,这样它运行得更快。如果您不打算为正在获取的所有数据提供服务,那么可能根本不需要获取这些数据。如果您要提供它,这将花费时间,而不是处理。

使用jquery.ajax()并在成功响应中显示所有html。在onload中调用ajax。
<div id="include"></div>
$(function(){
    $("#include").load("include.php");
});