移動Web——localStorage,sessionStorage,Storage事件監聽
1.0localStorage是storage的例項,Storage還提供以下方法和屬性:
1.setItem(key,value) 該方法接收一個鍵名和值作為引數,將會把鍵值對新增到儲存中,如果鍵名存在,則更新其對應值
2.getItem(key) 接收一個鍵名作為引數,返回鍵名所對應的值
3.removeItem(key) 接收一個鍵名做引數,並將該鍵名從儲存中刪除
4.length 用於訪問Storage物件中的item的數量
5.key(n) 訪問第n個key的名稱
6.claer() 清楚當前域下所有localStorage內容
<body>
<input type="text" name="" id="username">
<input type="button" value="localStroageId 設定資料" id="localStroageId">
<input type="button" value="localStroageId 獲取資料" id="getlocalStroageId">
<input type="button" value="localStroageId 刪除資料" id="removelocalStroageId">
<script>
document.getElementById('localStroageId').onclick = function(){
// 1.將使用者通過 input輸入的資料儲存到localStorage中
var username = document.getElementById('username').value;
window.localStorage.setItem("username", username);
}
document.getElementById('getlocalStroageId').onclick = function(){
// 2.從localStorage獲取資料
var username = document.getElementById('username').value;
alert(username);
}
document.getElementById('removelocalStroageId').onclick = function(){
// 3.刪除localStorage的中資料
var username = document.getElementById('username').value;
window.localStorage.removeItem("username", username);
}
</script>
</body>
2.sessionStorage簡介
1.sessionStorage主要用於區域儲存,只在單個頁面的會話期內有效
2.session翻譯成中文就是會話的意思,一次會話是指從一個瀏覽器視窗開啟到關閉的期間,關閉瀏覽器,會話結束
3.sessionStorage也是Storage的例項
4.sessionStorage 和 localStorage的方法基本一致,區別就是儲存資料的生命週期不同,localStorage 是永久性儲存,
sessionStorage 的生命週期和會話保持一致,會話結束時資料消失,並且 sessionStorage 的儲存資料只在當前瀏覽器視窗中有效
<body>
姓名:<input type="text" name="" id="username">
年齡:<input type="text" name="" id="age">
<input type="button" value="sessionStorage 設定資料" id="sz">
<input type="button" value="sessionStorage 獲取資料" id="get">
<input type="button" value="sessionStorage 刪除所有資料" id="remove">
<script>
document.getElementById('sz').onclick = function(){
// 1.獲取姓名和年齡輸入框的值
var username = document.getElementById("username").value;
var age = document.getElementById('age').value;
var user = {
username:username,
age:age
}
window.sessionStorage.setItem("user", JSON.stringify(user));
//使用stringify()將json的物件序列號並存入sessionStorage中
}
document.getElementById('get').onclick = function(){
var value = window.sessionStorage.getItem("user");
alert(value);
}
document.getElementById('remove').onclick = function(){
window.sessionStorage.clear();
}
</script>
</body>
3.Storage事件監聽
1.使用Web Storage API 儲存資料時,當儲存的資料發生變化時,會觸發window 物件的storage事件,通過監聽該事件並指定其事件處理函式,可以定義在其他頁面中修改sessionStorage 和 localStorage中的值所要執行的處理
2.監聽storage事件的示例程式碼如下:
<script>
window.addEventListener('storage', function onStorageChange(event){
console.log(event.key);
//回撥函式接收event物件作為一個引數,並且event物件的key屬性儲存發生變化的鍵名
});
</script>
在事件處理函式中,處理事件的事件物件(event引數值)具有以下屬性:
1.evet.key 屬性值為sessionStorage 或 localStoage 中被修改的資料鍵值
2.evet.oldValue 屬性值為sessionStorage 或 localStoage 中被修改前的值
3.evet.newValue 屬性值為sessionStorage 或 localStoage 中被修改後的值
4.evet.url 屬性值為sessionStorage 或 localStoage 中頁面的url地址
5.evet.storgaeArea 屬性值為變動的 sessionStorage物件 或 localStoage物件
注意;stroage事件並不在導致資料變化的當前頁面觸發,如果瀏覽器同時開啟一個域名下面的多個頁面,當其中的一個頁面改變sessionStorage或localStorage的資料時,其他所有頁面的storage事件會被觸發,而原始頁面並不出發storage事件,IE除外,storage事件會在其所有頁面觸發
相關文章
- h5 storage事件監聽H5事件
- web本地儲存(localStorage、sessionStorage)WebSession
- cookie、sessionStorage、localStorageCookieSession
- cookie, sessionStorage, localStorageCookieSession
- localStorage、sessionStorage、Cookie的SessionCookie
- Cookie LocalStorage SessionStorage對比CookieSession
- localStorage和sessionStorage區別Session
- localStorage與sessionStorage 區別Session
- Yet another intro for localStorage and sessionStorageSession
- flutter 中監聽滑動事件Flutter事件
- 【HTML5】Web Storage 事件HTMLWeb事件
- localStorage 與 sessionStorage / cookie 和 sessionSessionCookie
- 詳說 Cookie, LocalStorage 與 SessionStorageCookieSession
- sessionStorage和localStorage的區別Session
- cookie、sessionStorage、localStorage的區別?CookieSession
- cookies sessionStorage和localstorage區別CookieSession
- vue 監聽頁面滾動事件Vue事件
- 事件和事件監聽器事件
- 監聽滑鼠事件事件
- jQuery事件監聽jQuery事件
- Flutter事件監聽Flutter事件
- springboot事件監聽Spring Boot事件
- js 監聽事件JS事件
- JavaScript 事件監聽JavaScript事件
- localStorage和sessionStorage原型方法新增Session原型
- localStorage和SessionStorage,Application,Cache快取SessionAPP快取
- Cookie && Session && localStorage && sessionstorage && HTTP快取CookieSessionHTTP快取
- localStorage和sessionStorage儲存封裝Session封裝
- vue之監聽事件Vue事件
- 初識事件監聽事件
- 監聽鍵盤事件事件
- localStorage、sessionStorage、Cookie的區別及用法SessionCookie
- Spring Boot 事件和監聽Spring Boot事件
- deleted事件監聽報錯delete事件
- 如何移除事件監聽器事件
- localStorage,sessionStorage和cookie的區別及使用SessionCookie
- vue 動態監聽視窗大小變化事件Vue事件
- java springboot監聽事件和處理事件JavaSpring Boot事件