解析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 相关文章推荐
比较新旧两个数组值得增加和删除的JS代码
Oct 30 Javascript
jquery 删除cookie失效的解决方法
Nov 12 Javascript
JavaScript字符串对象charAt方法入门实例(用于取得指定位置的字符)
Oct 17 Javascript
Redis基本知识、安装、部署、配置笔记
Mar 05 Javascript
浅谈jQuery 选择器和dom操作
Jun 07 Javascript
springMVC结合AjaxForm上传文件
Jul 12 Javascript
JavaScript读二进制文件并用ajax传输二进制流的方法
Jul 18 Javascript
HTML的select控件美化
Mar 27 Javascript
easyui简介_动力节点Java学院整理
Jul 14 Javascript
详解React中传入组件的props改变时更新组件的几种实现方法
Sep 13 Javascript
利用JS动态生成隔行换色HTML表格的两种方法
Oct 09 Javascript
Vue项目打包部署到iis服务器的配置方法
Oct 14 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提取视频网站页面中的FLASH地址的代码
2010/04/17 PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
2016/10/12 PHP
PHP基于GD库实现的生成图片缩略图函数示例
2017/07/05 PHP
将HTML自动转为JS代码
2006/06/26 Javascript
JavaScript 存在陷阱 删除某一区域所有节点
2010/05/10 Javascript
让jQuery Mobile不显示讨厌loading界面的方法
2014/02/19 Javascript
Jquery实现侧边栏跟随滚动条固定(兼容IE6)
2014/04/02 Javascript
跟我学Nodejs(一)--- Node.js简介及安装开发环境
2014/05/20 NodeJs
js调试系列 初识控制台
2014/06/18 Javascript
jQuery采用连缀写法实现的折叠菜单效果
2015/09/18 Javascript
JS集成fckeditor及判断内容是否为空的方法
2016/05/27 Javascript
jquery popupDialog 使用 加载jsp页面的方法
2016/10/25 Javascript
vue父子组件的嵌套的示例代码
2017/09/08 Javascript
Vue项目分环境打包的实现步骤
2018/04/02 Javascript
vue组件文档(.md)中如何自动导入示例(.vue)详解
2019/01/25 Javascript
VUE中使用MUI方法
2019/02/12 Javascript
Vue 实现登录界面验证码功能
2020/01/03 Javascript
JS造成内存泄漏的几种情况实例分析
2020/03/02 Javascript
javascript操作向表格中动态加载数据
2020/08/27 Javascript
在vue中配置不同的代理同时访问不同的后台操作
2020/09/11 Javascript
浅谈python中的数字类型与处理工具
2017/08/02 Python
Python实现的简单线性回归算法实例分析
2018/12/26 Python
python实现关闭第三方窗口的方法
2019/06/28 Python
Django 大文件下载实现过程解析
2019/08/01 Python
Django缓存系统实现过程解析
2019/08/02 Python
Python如何计算语句执行时间
2019/11/22 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
详解python中groupby函数通俗易懂
2020/05/14 Python
Django 解决distinct无法去除重复数据的问题
2020/05/20 Python
浅谈pycharm导入pandas包遇到的问题及解决
2020/06/01 Python
计算机科学与技术应届生求职信
2013/11/07 职场文书
我为自己代言广告词
2014/03/18 职场文书
新品发布会主持词
2014/04/02 职场文书
二人合伙经营协议书
2014/09/13 职场文书
党校培训学习心得体会
2016/01/06 职场文书
基于flask实现五子棋小游戏
2021/05/25 Python