解析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 相关文章推荐
Extjs学习笔记之九 数据模型(上)
Jan 11 Javascript
jquery键盘事件使用介绍
Nov 01 Javascript
JS字符串累加Array不一定比字符串累加快(根据电脑配置)
May 14 Javascript
用javascript添加控件自定义属性解析
Nov 25 Javascript
jquery序列化form表单使用ajax提交后处理返回的json数据
Mar 03 Javascript
JavaScript bold方法入门实例(把指定文字显示为粗体)
Oct 17 Javascript
上传文件返回的json数据会被提示下载问题解决方案
Dec 03 Javascript
深入了解JavaScript中的Symbol的使用方法
Jul 28 Javascript
Vue实现typeahead组件功能(非常靠谱)
Aug 26 Javascript
jQuery 实现左右两侧菜单添加、移除功能
Jan 02 jQuery
使用Layer组件弹出多个对话框(非嵌套)与关闭及刷新的例子
Sep 25 Javascript
vue.js实现三级菜单效果
Oct 19 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
PHP 单引号与双引号的区别
2009/11/24 PHP
php生成shtml类用法实例
2014/12/09 PHP
如何写php守护进程(Daemon)
2015/12/30 PHP
PHP写API输出的时用echo的原因详解
2019/04/28 PHP
PHPstorm启用自动换行的方法详解(IDE)
2020/09/17 PHP
jquery xMarquee实现文字水平无缝滚动效果
2014/04/29 Javascript
完美兼容各大浏览器的jQuery插件实现图片切换特效
2014/12/12 Javascript
轻松创建nodejs服务器(10):处理上传图片
2014/12/18 NodeJs
创建一个类Person的简单实例
2016/05/17 Javascript
js遍历获取表格内数据的方法(必看)
2017/04/06 Javascript
jQuery实现radio第一次点击选中第二次点击取消功能
2017/05/15 jQuery
Redux 和 Mobx的选择问题:让你不再困惑!
2017/09/18 Javascript
vue实现nav导航栏的方法
2017/12/13 Javascript
vue组件实现可搜索下拉框扩展
2020/10/23 Javascript
vue-content-loader内容加载器的使用方法
2018/08/05 Javascript
Vue+Express实现登录注销功能的实例代码
2019/05/05 Javascript
Vue+ElementUI使用vue-pdf实现预览功能
2019/11/26 Javascript
vue实现数字动态翻牌的效果(开箱即用)
2019/12/08 Javascript
微信小程序多列表渲染数据开关互不影响的实现
2020/06/05 Javascript
python3用PIL把图片转换为RGB图片的实例
2019/07/04 Python
pandas计算最大连续间隔的方法
2019/07/04 Python
用Python抢火车票的简单小程序实现解析
2019/08/14 Python
django-xadmin根据当前登录用户动态设置表单字段默认值方式
2020/03/13 Python
GLAMGLOW香港官网:明星出镜前的秘密武器
2017/03/16 全球购物
Marc Jacobs官方网站:美国奢侈品牌
2017/08/29 全球购物
教师师德教育的自我评价
2013/10/31 职场文书
项目经理的岗位职责
2013/11/23 职场文书
租赁意向书范本
2014/04/01 职场文书
学习经验交流会主持词
2014/04/01 职场文书
司法局群众路线教育实践活动整改措施思想汇报
2014/10/13 职场文书
2014公司年终工作总结
2014/12/19 职场文书
党性分析材料格式
2014/12/19 职场文书
社区法制宣传日活动总结
2015/05/05 职场文书
Matlab如何实现矩阵复制扩充
2021/06/02 Python
如何正确理解python装饰器
2021/06/15 Python
python lambda 表达式形式分析
2022/04/03 Python