Czy można w jakiś sposób wyczyścić wartość localStorage, gdy nawiguję poza bieżącą stronę.
Usiłuję zapisać wartość scrollTop strony w zmiennej localStorage i użyć jej do przewinięcia do tego momentu, gdy strona zostanie odświeżona.
Ale jeśli przejdę do innej strony, chcę ponownie ustawić wartość localStorage na zero.
Czy jest jakiś prosty sposób, aby to zrobić?
AKTUALIZACJA
Dodano odpowiedź potwierdzoną przez Blaze
do mojego skryptu i jego błędu generowania
Scenariusz
$(document).on("vclick","#outerPage",function(e){
// alert("yo i am clickable now");
var parentOffset = $(this).parent().offset();
//or $(this).offset(); if you really just want the current element"s offset
var relX = e.pageX - parentOffset.left;
var relY = e.pageY - parentOffset.top;
// localStorage.setItem("scrollPosition", relY);
//storePosition.topCoordinate = relY;
//alert(relY);
obj = JSON.parse( localStorage.getItem("scrolls") );
obj[location.pathname] = relY;
localStorage.setItem("scrolls", JSON.stringify(obj) );
console.log(localStorage.getItem("scrolls"));
});
BŁĄD
Uncaught TypeError: Cannot set property "/url.html" of null
Dziękuję i pozdrawiam
Odpowiedzi:
1 dla odpowiedzi № 1tak
wystarczy użyć funkcji unload z jquery jquery / rozładuj
W funkcji wyładowywania wystarczy wyczyścić pamięć lokalną
localStorage.clear();