解析jquery中的ajax缓存问题


Posted in Javascript onDecember 19, 2013

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);//缓存记录,来做标记
Javascript 相关文章推荐
拖动布局之保存布局页面cookies篇
Oct 29 Javascript
JS date对象的减法处理实现代码
Dec 28 Javascript
jQuery Validate 验证,校验规则写在控件中的具体实例
Feb 27 Javascript
js比较日期大小的方法
May 12 Javascript
javaScript中封装的各种写法示例(推荐)
Jul 03 Javascript
jQuery使用bind函数实现绑定多个事件的方法
Oct 11 jQuery
bing Map 在vue项目中的使用详解
Apr 09 Javascript
用WebStorm进行Angularjs 2开发(环境篇:Windows 10,Angular-cli方式)
Dec 05 Javascript
vue cli 3.0 搭建项目的图文教程
May 17 Javascript
vue setInterval 定时器失效的解决方式
Jul 30 Javascript
js实现盒子移动动画效果
Aug 09 Javascript
微信小程序自定义tabBar的踩坑实践记录
Nov 06 Javascript
快速解决jquery之get缓存问题的最简单方法介绍
Dec 19 #Javascript
探讨JQUERY JSON的反序列化类 using问题的解决方法
Dec 19 #Javascript
Json序列化和反序列化方法解析
Dec 19 #Javascript
利用js(jquery)操作Cookie的方法说明
Dec 19 #Javascript
JQUERY dialog的用法详细解析
Dec 19 #Javascript
JS控制图片翻转示例代码(兼容firefox,ie,chrome)
Dec 19 #Javascript
jquery dialog open后,服务器端控件失效的快速解决方法
Dec 19 #Javascript
You might like
ThinkPHP访问不存在的模块跳转到404页面的方法
2014/06/19 PHP
php读取qqwry.dat ip地址定位文件的类实例代码
2016/11/15 PHP
thinkPHP统计排行与分页显示功能示例
2016/12/02 PHP
php实现将二维关联数组转换成字符串的方法详解
2017/07/31 PHP
JavaScript性能优化 创建文档碎片(document.createDocumentFragment)
2010/07/13 Javascript
用js传递value默认值的示例代码
2014/09/11 Javascript
详解JavaScript操作HTML DOM的基本方式
2015/10/21 Javascript
jQuery实现可以控制图片旋转角度效果(附demo源码下载)
2016/01/27 Javascript
Angular-UI Bootstrap组件实现警报功能
2018/07/16 Javascript
JavaScript中交换值的10种方法总结
2020/08/18 Javascript
javaScript代码飘红报错看不懂?读完这篇文章再试试
2020/08/19 Javascript
VUE中鼠标滚轮使div左右滚动的方法详解
2020/12/14 Vue.js
python分割列表(list)的方法示例
2017/05/07 Python
python处理Excel xlrd的简单使用
2017/09/12 Python
python的re正则表达式实例代码
2018/01/24 Python
python实现简单多人聊天室
2018/12/11 Python
python 通过SSHTunnelForwarder隧道连接redis的方法
2019/02/19 Python
对django中foreignkey的简单使用详解
2019/07/28 Python
Pytorch DataLoader 变长数据处理方式
2020/01/08 Python
Django 设置多环境配置文件载入问题
2020/02/25 Python
PyTorch中的拷贝与就地操作详解
2020/12/09 Python
python实现银行账户系统
2021/02/22 Python
HTML5制作3D爱心动画教程 献给女友浪漫的礼物
2014/11/05 HTML / CSS
Joules美国官网:出色的英国风格
2017/10/30 全球购物
代理班主任的自我评价
2014/02/04 职场文书
区级文明单位申报材料
2014/05/15 职场文书
积极向上的团队口号
2014/06/06 职场文书
无私奉献演讲稿
2014/09/04 职场文书
银行会计主管岗位职责
2014/10/01 职场文书
银行业务授权委托书
2014/10/10 职场文书
违纪学生保证书
2015/02/27 职场文书
情侣之间的道歉短信
2015/05/12 职场文书
烈士陵园观后感
2015/06/08 职场文书
教师纪律作风整顿心得体会
2016/01/23 职场文书
《西门豹》教学反思
2016/02/23 职场文书
关于redisson缓存序列化几枚大坑说明
2021/08/04 Redis