如何aj你的汇合页面这么慢的宏不会减慢页面加载速度

时间:2010-02-19 12:26:34

标签: ajax confluence

一些使用宏的页面:

topusers或popularlabels

加载速度很慢。有没有办法通过ajax异步加载这个加载而不是让这块加载初始页面加载?

4 个答案:

答案 0 :(得分:2)

未来宏绝对是100%的最佳方式。

我们在Confluence 2.10.3实例上大量使用它来加速一切,但我没有用更新的版本测试它。

https://labs.atlassian.com/wiki/display/FUTURE/Home

我制作了一个显示其工作的小视频 - 联系SharePoint服务器以呈现文档列表。这不是一个完美的演示,但可以让您了解它的作用。

我也制作了一个视频,但是没有StackOverFlow代表在这里发布它所以这里是URL的一部分  screencast.com/t/tz8xdSCQYxp

布伦丹

答案 1 :(得分:1)

如果考虑使用jQuery库,它具有对异步Ajax请求的内置支持。

答案 2 :(得分:0)

也许谷歌分析方法会帮助你。

(function() {
    var delayed = document.createElement('script');
        delayed.type = 'text/javascript';
        delayed.async = true;
      delayed.src = 'URL_AD_SERVER';
        (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(delayed);
})();

但是,我不知道如何为依赖项工作:)

答案 3 :(得分:0)

真正需要做的就是推迟加载,直到页面加载完毕。要做到这一点,你可以创建一个javascript函数来设置你正在加载的内容的脚本标记,然后当正文加载时,调用这个函数。你可以通过以下方式做到:

function loadConfluence() {
 var ads = document.createElement('script');
 ads.async = true;
 ads.src = 'your_ad_url';
 return document.getElementsByTagName('body')[0].appendChild(ads);
};
window.onload = loadConfluence();
此代码将等待页面完全加载,然后调用该函数加载您的广告。