原生JavaScript常用本地浏览器存储方法五(LocalStorage+userData的一个浏览器兼容类)
基于LocalStorage+globalStorage+userData实现的一个本地存储类
userData用来兼容ie6 ie7
由userData模仿Session的方法:浏览器关闭删除保存的记录
1 var userStorage = { 2 isIE : null, 3 Local : function(){ 4 if(document.all){ 5 var oUserData; 6 if(!userStorage.isIE){ 7 userStorage.isIE =(function(){ 8 oUserData = document.body; 9 oUserData.addBehavior("#default#userdata"); 10 })(); 11 } 12 return { 13 set : function(key,value){ 14 oUserData.setAttribute(key,value); 15 oUserData.save("UserData"); 16 }, 17 get : function(key){ 18 oUserData.load("UserData"); 19 return oUserData.getAttribute(key); 20 }, 21 del : function(key){ 22 oUserData.load("UserData"); 23 oUserData.removeAttribute(key); 24 oUserData.save("UserData"); 25 } 26 } 27 }else{ 28 var localStorage = window.localStorage; 29 return { 30 set : function(key,value){ 31 localStorage.setItem(key,value); 32 }, 33 get : function(key){ 34 return localStorage.getItem(key); 35 }, 36 del : function(key){ 37 localStorage.removeItem(key); 38 } 39 } 40 } 41 }, 42 Session : function(){ 43 if(document.all){ 44 var oUserData; 45 if(!userStorage.isIE){ 46 userStorage.isIE =(function(){ 47 oUserData = document.body; 48 oUserData.addBehavior("#default#userdata"); 49 })(); 50 } 51 return { 52 set : function(key,value){ 53 oUserData.setAttribute(key,value); 54 oUserData.save("UserData"); 55 window.attachEvent('onbeforeunload', function(event){ 56 if(event.clientX <= 0 || event.clientY <=0){ 57 oUserData.load("UserData"); 58 oUserData.removeAttribute(key); 59 oUserData.save("UserData"); 60 } 61 }); 62 }, 63 get : function(key){ 64 oUserData.load("UserData"); 65 return oUserData.getAttribute(key); 66 }, 67 del : function(key){ 68 oUserData.load("UserData"); 69 oUserData.removeAttribute(key); 70 oUserData.save("UserData"); 71 } 72 } 73 }else{ 74 var sessionStorage = window.sessionStorage; 75 return { 76 set : function(key,value){ 77 sessionStorage.setItem(key,value); 78 }, 79 get : function(key){ 80 return sessionStorage.getItem(key); 81 }, 82 del : function(key){ 83 sessionStorage.removeItem(key); 84 } 85 } 86 } 87 }, 88 closeWindow : function(){ 89 90 } 91 } 92 93 var Local = new userStorage.Local(); 94 Local.set("name","dtdxrk"); 95 alert(Local.get("name")); 96 Local.del("name"); 97 98 99 var Session = new userStorage.Session(); 100 Session.set("age","30"); 101 alert(Session.get("age")); 102 Session.del("age");