<ruby id="eitmy"></ruby>
<strong id="eitmy"></strong>
      1. <li id="eitmy"></li>

        1. <li id="eitmy"></li>
          0712-2888027 189-8648-0214
          微信公眾號

          孝感風信網絡科技有限公司微信公眾號

          當前位置:主頁 > 技術支持 > Javascript/JQuery > 設置緩存數據js源代碼cache.js

          設置緩存數據js源代碼cache.js

          時間:2024-04-12來源:風信官網 點擊: 889次
          設置緩存數據js源代碼cache.js,可用于在瀏覽器中利用js緩存數據,需要的小伙伴可以了解一下。
           
          cache.js源代碼如下:
           
          $.extend($, {
              Cache : {
                  userData: false,
                  supportLocalStorage: typeof localStorage == 'object' ? true : false,
                  name: location.hostname,
           
                  init: function () {
                      if ( $.Cache.supportLocalStorage )
                          return false;
                      if ( !$.Cache.userData ) {
                          try {
                              $.Cache.userData = document.createElement('INPUT');
                              $.Cache.userData.type = "hidden";
                              $.Cache.userData.style.display = "none";
                              $.Cache.userData.addBehavior("#default#userData");
                              document.body.appendChild($.Cache.userData);
                              var expires = new Date();
                              expires.setDate(expires.getDate() + 365);
                              $.Cache.userData.expires = expires.toUTCString();
                          } catch (e) {
                              return false;
                          }
                      }
                      return true;
                  },
           
                  set: function (key, value, expire) {
                      if ( typeof value == 'object' ) {
                          value = JSON.stringify(value);
                      }
                      if ( expire == undefined )
                          expire = 0;
           
                      if ( $.Cache.init() ) {
                          $.Cache.userData.load($.Cache.name);
                          $.Cache.userData.setAttribute(key, value);
                          if ( expire > 0 ) {
                              var timestamp = Date.parse(new Date());
                              var expiration = timestamp + expire;
                              $.Cache.userData.setAttribute(key + "_EXPIRE", expiration);
                          }
                          $.Cache.userData.save($.Cache.name);
                      } else {
                          localStorage.setItem(key, value);
                          if ( expire > 0 ) {
                              var timestamp = Date.parse(new Date());
                              var expiration = timestamp + expire;
                              localStorage.setItem(key + "_EXPIRE", expiration);
                          }
                      }
                  },
           
                  get: function (key) {
                      var val;
                      var timestamp = Date.parse(new Date());
                      if ( $.Cache.init() ) {
                          $.Cache.userData.load($.Cache.name);
                          val = $.Cache.userData.getAttribute(key);
                          var expiration = $.Cache.userData.getAttribute(key + "_EXPIRE");
                          if ( expiration != null && expiration != undefined && expiration > 0  ) {
                              if ( expiration < timestamp) {
                                  $.Cache.userData.removeAttribute(key);
                                  $.Cache.userData.removeAttribute(key + "_EXPIRE");
                                  return undefined;
                              }
                          }
                      } else {
                          val = localStorage.getItem(key);
                          var expiration = localStorage.getItem(key + "_EXPIRE");
                          if ( expiration != null && expiration != undefined && expiration > 0 ) {
                              if ( expiration < timestamp) {
                                  localStorage.removeItem(key);
                                  localStorage.removeItem(key + "_EXPIRE");
                                  return undefined;
                              }
                          }
                      }
                      if ( val == null || val == undefined || val == "" )
                          return undefined;
                      if ( val.indexOf("{") == 0 || val.indexOf("[") == 0 ) {
                          return JSON.parse(val);
                      }
                      return val;
                  },
                  del : function(key) {
                      if ( $.Cache.init() ) {
                          $.Cache.userData.load($.Cache.name);
                          $.Cache.userData.removeAttribute(key);
                          $.Cache.userData.removeAttribute(key + "_EXPIRE");
                      } else {
                          localStorage.removeItem(key);
                          localStorage.removeItem(key + "_EXPIRE");
                      }
                  },
              }
          });
           
          使用方法演示:
           
          $(function(){
          var cacheCity = $.Cache.get('city');
                  var cacheCity_id = $.Cache.get('city_id');
           
                  if ( cacheCity ) {
                      $("input[name=city]").val(cacheCity);
                  }
           
                  if(cacheCity_id){
                      $("input[name=city_id]").val(cacheCity_id);
                  }
          }
           
          緩存數據可直接賦值給input,使用起來還是非常方便的。
          熱門關鍵詞: 緩存數據 js 源代碼 cache.js
          欄目列表
          推薦內容
          熱點內容
          展開
          一区二区三区福利视频免费看|久久天天躁狠狠躁夜夜2020一|亚洲日本欧美日韩高观看|免费A片无遮挡网站