2013-10-31 107 views
0

我正在嘗試創建一個web應用程序,您將在按鈕中單擊,並將其ID保存到localstorage並更改樣式。 但是,當我保存在本地存儲中,我點擊的最後一個按鈕,替換它之前的按鈕ID。 我的代碼:本地存儲問題

$(document).ready(function(){ 
    $("li a").click(function(){ 
     $("li a").removeClass('active'); 
     $(this).addClass('active'); 
     localStorage.setItem('ativo', $(this).html()) 
    }); 

    var ativo = localStorage.getItem('ativo'); 

    $("li a").each(function(index){ 
     if($(this).html() == ativo) { 
      $(this).addClass('active'); 
     } 
    }); 
}); 

請幫幫我,謝謝

+1

您的'click'處理程序在您每次點擊某物時運行。其他行,'localStorage.getItem'和'$(「li a」)。each'只運行一次。 –

回答

0

localStorage的是一個key-value存儲。通過設置一個鍵,如果該鍵已經設置,則替換該鍵的值。但是,您可以在localStorage中存儲字符串化數組,然後在需要時檢索並添加它。

//Store an array in local storage 
localStorage.setItem('arr',JSON.stringify([6,8,9]) 

//retrieve the array, add to it, then save it again 
var arr = JSON.parse(localStorage.getItem('arr')); 
arr.push(23) 
localStorage.setItem('arr', arr)