jquery mobile JS与缓存的问题

我的页面列表显示一些文章,点击更多时通过JS在下面再加一些内容,然后点击其它页面,再点击回来,那个更多按钮就不起作用了,在页面中设置data-ajax="false"这个... 我的页面列表显示一些文章,点击更多时通过JS在下面再加一些内容,然后点击其它页面,再点击回来,那个更多按钮就不起作用了,在页面中设置data-ajax="false"这个,就可以了,但每次都得重新加载页面,有没有办法解决下,能让那个页面执行JS又能缓存(点击更多出现的内容也能够缓存)
function mores(more,list_ul,php_url,id){
/* $(more).css({height:"30px","line-height":"30px","text-align":"center",display:"block",margin:"auto","background-color":"#eee"});
$(more+" span").css({width:"50px",height:"30px",display:"block",float:"left"});
$(more+" .more-b").css({ width:"100px", margin:"auto"});*/
$(more).on("tap",function(){
n=$(list_ul+' li').size();
$.ajax({
type: "post",
url: php_url,
data:"num="+n+"&id="+id,
beforeSend:beforecall,
success:callback

});
展开
 我来答
百度网友64bfd0c
2014-02-22 · TA获得超过6573个赞
知道小有建树答主
回答量:1316
采纳率:0%
帮助的人:910万
展开全部
先说明两点:
1、jquery mobile默认跳转都是用ajax的方法,这样的做法导致的直接影响就是页面js只能加载一次,用data-ajax后可以使当前页面摆脱ajax,而页面加载默认就是重新加载了。
2、jquery mobile默认在页面刷新或者跳转后,会自动移除缓存

然后说说你的问题,在jquery mobile中倒是有个能够控制缓存的属性:

如果想要的话,你可以使jQuery Mobile在dom中保存之前访问过的页面而不是移除他们。这样用户在回到这个页面的时候就可以迅速加载。

要让所有曾经访问过的pages都缓存,设置domcache选项为true,
HTML 代码:

$.mobile.page.prototype.options.domCache = true;

或者你可以缓存特定的某个页面,给page容器添加如下属性
<div data-role="page" id="cacheMe" data-dom-cache="true">

当然这个是jquery mobile的处理缓存的方法,不知道能不能解决,如果不能解决说下,我再告诉你其他方法

不明白请追问,如果对你有帮助,记得采纳~
更多追问追答
追问
data-ajax="false",加入这个之后,在加这个ata-dom-cache="true",好像不起作用了

http://m.hsyc120.com/yczl/kfal/
这是我的网站,我就是想点击下面的更多,能够了缓存,点击其他连接之后回来,刚才点击更多新加的内容还在,要不然这样感觉很慢
追答
你的网站“更多”就是“已到底”,你要缓存什么我看不出来。
你把需要缓存的内容截图下,然后把对应部分的前台页面代码给出来,我帮你看看吧
mvc88
2014-02-22 · 超过45用户采纳过TA的回答
知道小有建树答主
回答量:122
采纳率:0%
帮助的人:117万
展开全部
jqm 默认对所以的A链接ajax方式缓存,这样可以用更多的转场等效果,否则无缓存。
追答
每次都加载页面的好处是可以随时刷新。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式