解析jquery中的ajax缓存问题
网络编程 发布日期:2024/10/10 浏览次数:1
正在浏览:解析jquery中的ajax缓存问题
jquery的ajax请求默认请求cache是true 也就是开启的,dataType为script和jsonp时默认为false。现在我要在浏览器里读取缓存,因为ajax请求的数据很大,请求一次就够了。但是问题来了,在FF里面,是没有ajax缓存的,也就是每次都会触发ajax请求,这点和IE不一样。所以在这里就得注意,做个判断,阻止触发ajax事件。
复制代码 代码如下:
function ajax_show(apartId,roomClass,sortTile){
HX_THIS_FANGXING_NUM=sortTile;
huxing_pic_set_color();
var this_li=$('#title_'+sortTile);
var cache=this_li.data("cache");
if(undefined!=cache){
var data_arr =cache.split('-');
xg_pic_links=data_arr[0];//缓存记录
layout_pic_links=data_arr[1];
layout_big_pic_links=data_arr[2];
product_links=data_arr[3];
xg_pic_deal_array();
xg_show_pic(xg_now_pic_id);
}else{
$.ajax({//用JQ的缓存cache在FF下还是会发起新请求
type: "POST",
url: "index.php?m=content&c=index&a=ajax_all_pic",
data: "apartId=123&roomClass=123",
dataType:'text',
success: function(backdata){
this_li.data('cache',backdata);//缓存记录
var data_arr =backdata.split('-');
xg_pic_links=data_arr[0];
layout_pic_links=data_arr[1];
layout_big_pic_links=data_arr[2];
product_links=data_arr[3];
xg_pic_deal_array();
xg_show_pic(xg_now_pic_id);
}
});
}
}
通过this_li.data('cache',backdata);//缓存记录,来做标记
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。