源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

解析jquery中的ajax缓存问题

  • 时间:2021-06-18 18:53 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:解析jquery中的ajax缓存问题
jquery的ajax请求默认请求cache是true 也就是开启的,dataType为script和jsonp时默认为false。现在我要在浏览器里读取缓存,因为ajax请求的数据很大,请求一次就够了。但是问题来了,在FF里面,是没有ajax缓存的,也就是每次都会触发ajax请求,这点和IE不一样。所以在这里就得注意,做个判断,阻止触发ajax事件。
[u]复制代码[/u] 代码如下:
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);//缓存记录,来做标记
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部