为什么没有首先加载的页面需要这么长时间来重新加载?

时间:2015-05-16 14:27:56

标签: jquery-mobile

我很难改善需要多次数据库调用的页面的页面加载时间。加载大约需要5秒钟。

这是我的情况。我有两个单独的单页模板,FastPage.pl和SlowPage.pl。 FastPage.pl快速下载,SlowPage.pl是一个包含很多调用的慢速加载页面。我有FastPage.pl和SlowPage.pl的以下导航栏:

<!--Page A Navbar-->
<div data-role="header" data-position="fixed">
    <div data-role="navbar">
      <ul>
        <li><a href="FastPage.pl" data-prefetch="true" class="ui-state-persist">Fast Page</a></li>
        <li><a href="SlowPage.pl" data-prefetch="true">Slow Page</a></li>
      </ul>
    </div>
</div>

<!--Page B Navbar-->
<div data-role="header" data-position="fixed">
    <div data-role="navbar">
      <ul>
        <li><a href="FastPage.pl" data-prefetch="true">Fast Page</a></li>
        <li><a href="SlowPage.pl" class="ui-state-persist" data-prefetch="true">Slow Page</a></li>
      </ul>
    </div>
</div>

所以这就是我遇到的问题:

场景1:首先加载FastPage.pl

  1. 首先加载FastPage.pl,它立即加载。
  2. 点击SlowPage.pl链接,它立即加载(显然是因为预取)。
  3. 点击返回FastPage.pl。它会立即加载。
  4. 点击返回SlowPage.pl。此页面加载速度非常慢。
  5. 在链接之间来回点击,SlowPage.pl现在总是加载缓慢,即使它在步骤2中快速加载。为什么它仍然像第2步那样快速加载?

    场景2:首先加载SlowPage.pl

    1. 首先加载SlowPage.pl,按预期缓慢加载。
    2. 点击FastPage.pl链接,它会立即加载。
    3. 点击返回SlowPage.pl。它会立即加载。
    4. 在页面之间切换非常快。
    5. 在这些情景中,这种行为差异的原因是什么?更重要的是,有什么办法可以让SlowPage.pl页面在加载后一直快速重新加载吗?

1 个答案:

答案 0 :(得分:0)

好的,我只是(重新)发现了这一点文档:

http://demos.jquerymobile.com/1.4.5/pages/#DOMCache

这解释了我完全看到的行为。我只是通过添加:

来解决问题

data-dom-cache="true"键/值对<div role="page"> div。