2013-02-19 53 views
4

在我的案例链接加载到一个特殊的div wrapers这是其链接的父母。 我通过pageload事件来完成。jQuery Mobile的 - 停止高速缓存

当JQuery Mobile执行AJAX请求时,一切正常。但是,如果我点击访问过的链接,jquery mobile不会发送请求,但是会显示空白页面,换句话说,请替换缓存中的内容#page1

我需要这些请求。

UPD

活动pagebeforeloadpageload不出现在高速缓存的情况下。 = \

回答

5

您可以指定不缓存这样的页面:

<div data-role="page" id="page-detail" data-dom-cache="false"> 
    .... 
</div> 

更新

事实上,它是data-dom-cache=false,可用于网页,链接和对话

文件http://jquerymobile.com/demos/1.2.0/docs/api/data-attributes.html

如果您要避免对所有页面数据prefecting,看看这里:How does one disable Caching in jQuery Mobile UI

+0

回答更新! – sdespont 2013-02-19 07:09:11

+0

ty,我看到了,但所有这些都不适合我 – Luciuz 2013-02-19 07:29:34

0

咬我的代码,请

$(document).on('pagebeforeload', function(event, data) { 
    var url = data.url; 
    if (url.toLowerCase().indexOf("office") >= 0) { 
     event.preventDefault(); 
     $.get(data.absUrl, {}, function(res){ 
      _this = $(res); 
      if (_this.attr('data-id')>0) { 
       var card_id = _this.attr('data-id'); 
       $('#detail-'+card_id).empty().append(_this).trigger('create'); 
      } 
     }); 
     data.deferred.reject(data.absUrl, data.options); 
    } 
});