【问题标题】:how to load php page after loading all the other content of page加载页面的所有其他内容后如何加载php页面
【发布时间】:2017-12-30 23:05:12
【问题描述】:

我正在开发一个基于网络的视频频道,我必须在其中添加邮件功能。我添加了一个邮件按钮,所有功能都运行良好,但加载页面需要更多时间。我在video.php 页面中包含了mail.php。整个页面等到包含mail.php。因此需要更多时间。

请注意,我的应用程序是用 PHP codeigniter 开发的。 mail.php 包含一些 js 文件、ajax 调用和 html 表单。

我可以先加载所有页面内容,然后在后台加载mail.php。

这是我尝试过的......

video.php

<script>jQuery("#mail_btn").click(function()jQuery("#div1").load(mail.php);});</script>
<div id="div1" class ="mail_form">
//include_once(mail.php); //it was working fine but it takes time,i want to load mail form here.
</div>

请帮助我或提出任何替代方法。 谢谢..

【问题讨论】:

  • 你应该显示更多代码。
  • 没有显示任何代码是不可能的,但是从 jquery 加载代码似乎不是实现你想要的好方法。您应该找出 php 代码变慢的原因,并在此之后采取适当的行动。
  • 只运行include_once 通常不需要时间 - 您是否尝试过调试代码以查看哪些部分对加载性能至关重要?
  • 我试图找出为什么它很慢,这完全是因为我在 mail.php 中包含了外部 js 库。为了达到我的要求,我必须加载那些库。所以现在该怎么办。 @bestprogrammerintheworld
  • 谢谢大家,由于数据库连接,速度很慢。

标签: javascript php jquery html codeigniter


【解决方案1】:

我会添加 jQuery 延迟加载插件 http://jquery.eisbehr.de/lazy/。我在下面添加了一个 sn-p,但插件站点上有更好的示例。

$(function() {
    $("div[data-src]").Lazy();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="//cdn.jsdelivr.net/jquery.lazy/1.7.1/jquery.lazy.min.js"></script>
<script type="text/javascript" src="//cdn.jsdelivr.net/jquery.lazy/1.7.1/plugins/jquery.lazy.ajax.min.js"></script>

<div data-loader="ajax" data-src="ajax.html">
  <p>Content you want to load later goes here.</p>
</div>

【讨论】:

  • 为此我必须加载更多库,这意味着运行需要更多时间
  • 是的,您需要加载 jQuery 插件,但它非常轻量级。
【解决方案2】:

我认为你可以使用 Ob_start 和 ob_end_flush 这些是控制页面输出加载和显示的功能 在这里查看手册 php manual

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-30
    • 1970-01-01
    • 2014-08-09
    • 2021-12-02
    • 1970-01-01
    • 2015-03-29
    • 1970-01-01
    相关资源
    最近更新 更多