Ser*_*hiy 27 javascript jquery jquery-ui jquery-mobile
试了...
<div data-role="page" data-cache="30">
<div data-role="page" data-cache="never">
<div data-role="page" data-cache="false">
<div data-role="page" cache="false">
Run Code Online (Sandbox Code Playgroud)
没有什么可以工作......所以目前我正在修复服务器端的问题...
.'?x='.rand()
.'&x='.rand()
Run Code Online (Sandbox Code Playgroud)
我不想禁用AJAX只是缓存.必须有更好的方法......我错过了什么吗?
谢谢,
谢尔盖·
Ser*_*hiy 36
谢谢你们的答案,尽管他们对我不起作用,但他们确实指出了我找到我正在寻找的代码的方向.
这是我在这位绅士的Github Gist上找到的代码.
https://gist.github.com/921920
jQuery('div').live('pagehide', function(event, ui){
var page = jQuery(event.target);
if(page.attr('data-cache') == 'never'){
page.remove();
};
});
Run Code Online (Sandbox Code Playgroud)
在Gist中还有一个后退按钮代码,但我似乎并不需要它,因为我的后退按钮似乎工作得很好......
您是否尝试覆盖默认值?
$(document).bind("mobileinit", function(){
$.mobile.page.prototype.options.domCache = false;
});
Run Code Online (Sandbox Code Playgroud)
这适合我
现在,jQM RC1中的页面缓存现已关闭.请参阅jQM网站上有关页面缓存的摘录:http://jquerymobile.com/demos/1.0rc1/docs/pages/page-cache.html
如果您愿意,可以告诉jQuery Mobile将以前访问过的页面保留在DOM中,而不是删除它们.这使您可以缓存页面,以便在用户返回时立即可用.
要将所有以前访问过的页面保留在DOM中,请将页面插件上的domCache选项设置为true,如下所示:
$.mobile.page.prototype.options.domCache = true;或者,要仅缓存特定页面,可以将data-dom-cache ="true"属性添加到页面的容器中:
<div data-role="page" id="cacheMe" data-dom-cache="true">您还可以以编程方式缓存页面,如下所示:
pageContainerElement.page({ domCache: true });DOM缓存的缺点是DOM会变得非常大,导致某些设备出现速度减慢和内存问题.如果启用DOM缓存,请注意自己管理DOM并在一系列设备上进行彻底测试.
| 归档时间: |
|
| 查看次数: |
59566 次 |
| 最近记录: |