2014-07-18 3 views
1

JQM을 실행하는 안드로이드 장치에서 localstorage가 작동하는 이상한 문제가 있습니다. 웹 브라우저에서 볼 때 내 코드가 완벽하게 작동하지만 내 안드로이드에서는 localStorage.getItem ('visittime')에서 변수를받지 못한다는 것을 언급해야합니다.로컬 저장소가 안드로이드에서 작동하지 않습니다.

스크립트는 기본적으로 사용자에게 매분마다 표시되는 내 자신의 작은 팝업 창입니다. 변수를 현재 시간 스탬프와 함께 로컬 저장소에 저장합니다. 변수가 존재하면, 변수를 현재의 타임 스탬프와 비교합니다. 1 분 넘게되면 팝이 다시 나타납니다.

$(document).on("pagecreate", function() { 
    var now = new Date().getTime(), 
     storagedate = localStorage.getItem('visittime'); 
    if(storagedate){ 
     var diff = now - storagedate; 
     if(diff > 60000){ 
      localStorage.removeItem('visited'); 
      localStorage.removeItem('visittime'); 
     } 
    } 
    var yetVisited = localStorage.getItem('visited'); 
    if (!yetVisited) { 
     $(".welcomewindow").delay(1500).fadeIn("300", function(){ 
      $(".welcome").css({"margin-left":leftPos,"width":welcomeSetwidth}).fadeIn("300") ; 
     }); 
     $(".welcomeClose").on("click",function(e){ 
      $(".welcomeshield").fadeOut("300"); 
      $(".welcome").fadeOut("300"); 
      localStorage.setItem('visited','yes'); 
      localStorage.setItem('visittime', new Date().getTime()); 
     }); 
    } 
} 

나는 JQM로드되기 전에 또는 mobileinit 호출 할 자신의 스크립트의 위치를 ​​변경하여 해결 다소 비슷한 문제를 가진 사람들을 보았다. 나는 이것을 알아낼 수 없었다.

+0

를 얻으려면? 그 안드로이드 브라우저에서 작동합니까? (나는 들어 보지 못했습니다) – dandavis

+0

페이지 생성 : "페이지가 DOM에서 (ajax 또는 기타를 통해) 생성되고 모든 위젯이 포함 된 마크 업을 향상시킨 후에 트리거됩니다." (http://api.jquerymobile.com/pagecreate/) – Sam

+0

안드로이드 APP (mWebView.getSettings(). setDomStorageEnabled (true);)에서 이것을 얻었습니까? --- 여기서 더 읽을 수 있습니다. - https://mytechead.wordpress.com/tag/setdomstorageenabled/ – Tasos

답변

0

값 을 설정 sessionStorage.comp='12344';를 사용하여 시도하고 var value= sessionStorage.comp;는 ("pagecreate")가 뭔지 그들에게

+0

어떻게 이것을 사용하여 세션을 삭제합니까? 추가, 읽기 및 삭제가 가능해야합니다. – ZeroNine

+0

브라우저를 닫으면 삭제됩니다. 쿠키로 저장하거나 다음과 같이 사용할 수 있습니다. var test = "hello world"; localstorage.storageTest = test; var test2 = localstorage.storageTest; localStorage.removeItem을 제거하려면 ('storageTest'); – user3023313

관련 문제