仅在下载网页时加载<div>外部内容?

时间:2016-08-10 11:06:22

标签: php wordpress

我希望只有在加载主页面后,才会在网页中放置<div>之一来填充内容。现在问题是因为<div>内容来自外部网址,整个网页在等待<div>完成加载外部内容时导致加载速度变慢。有时外部URL占用太多时间,从而导致正在运行的网页的性能不一致。

实现这一目标的最佳方法是什么?通过AJAX / Jquery?如果是这样的话?

<div>部分主要用于显示来自外部网址的某些广告,这些广告将每个广告作为JSON对象返回...

3 个答案:

答案 0 :(得分:2)

使用jQuery非常简单。加载页面,然后在您希望加载外部内容的位置具有如下div:

<div id="externalContainer">Loading data...</div>

默认情况下,此DIV包含“正在加载数据...”字样,然后在页面加载后,您可以发出AJAX请求以从外部URL加载数据,然后将其呈现在该DIV中(覆盖加载文字)。

以下是执行此操作的jQuery代码:

$(document).ready(function () {
    $.ajax({
        url: 'http://www.mywebsite.com/mypage.php',
        cache: false,
        dataType: "html",
        success: function (data) {
            $('#externalContainer').html(data);
        },
        error: function (data) {
            alert('Failed to load external content');
        }
    });
});

这样,您的页面将响应用户,外部内容将加载后台。

答案 1 :(得分:0)

您可以使用 AJAX 和jQuery的$(window).load事件来完成此任务,

这是你可以做到的,

$(window).load(function() {
     // Call AJAX function here.
});

.load()函数中的上述代码块中,只有在完全加载窗口后才会调用该函数。 (例如图像,资产等。)

您的AJAX功能应该从外部URL加载内容。
参考:http://api.jquery.com/jquery.ajax/

答案 2 :(得分:0)

加载页面后,请执行广告加载部分

jQuery(window).load(function () {
    alert('page is loaded');

   // Then send request to load Ads to <Div>

});