1. <source id="rxoyr"><mark id="rxoyr"></mark></source>

    <b id="rxoyr"><address id="rxoyr"><bdo id="rxoyr"></bdo></address></b>
  2. <source id="rxoyr"></source>
    <u id="rxoyr"><sub id="rxoyr"></sub></u><var id="rxoyr"><td id="rxoyr"></td></var><b id="rxoyr"></b>

      0712-2888027 189-8648-0214
      微信公眾號

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

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

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

      時間:2024-09-07來源:風信官網 點擊: 1134次
      設置緩存數據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
      欄目列表
      推薦內容
      熱點內容
      展開
      欧美高清cheng人_亚洲人AV在线不卡_精品国产亚洲一区二区在线_免费精品自在久久_最新亚洲人成在线观看