2016-11-03 2 views
0

새로 고침 페이지 전에 변수 값을 변경하고 싶습니다.Javascript를 사용하여 페이지를 새로 고치기 전에 값을 변경하는 방법은 무엇입니까?

나의 주요 목표는 URL을 3 초마다 배열로 저장하는 것입니다. URL 저장에 문제가 없지만 페이지가 새로 고쳐지면 [ind] 및 array [urllist] 인덱스가 null이됩니다. 새로 고침 전에 ind, urllist 길이를 변경하고 싶습니다. 제발 이것에 대한 최종 해결책을 말해주십시오.

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <script> 
     var urllist = []; 
     var ind = 0; 
     var myVar; 
     myVar = setInterval(Geturlfun, 3000); 
     function Geturlfun() { 
      var pageURL = window.location.href; 
      if (urllist[ind - 1] == pageURL) { 

      } else { 
       urllist[ind] = pageURL;      
       ind = ind + 1; 
       alert(pageURL); 
      } 
     } 
     function goBkHist(a) { 
      var l_ref = ind - 2; 
      if (l_ref != 0) { 
       var pageURL2 = urllist[l_ref]; 
       ind = l_ref + 1; 
       alert(pageURL2); 
       loadUrl(pageURL2); 
      } 
     } 
     function goFdHist(a) { 
      var l_ref_2 = ind; 
      var pageURL2 = urllist[l_ref_2]; 
      ind = l_ref_2 + 1; 
      alert(pageURL2); 
      loadUrl(pageURL2); 
     } 
     function loadUrl(newLocation) { 
      window.location = newLocation; 
      location.reload(); 
      return true; 
     } 
    </script> 
</head> 
<body> 
    <input type="button" value="BACK " onclick="goBkHist(-1)" /> 
    <input type="button" value="FORWARD" onclick="goFdHist(1)" /> 
</body> 
</html> 

변경 사항을 새로 고치기 위해 아래 코드를 시도했습니다. 그러나 경고 메시지 상자에 문자 메시지를 표시합니다. 경고 상자를 표시하고 싶지 않습니다. 디스플레이 팝업없이 기능을 실행하거나 값을 변경하고 싶습니다.

window.onunload = function (e) { 
       var dialogText = '0'; 
       e.returnValue = dialogText; 
       return dialogText; 
      }; 

미리 감사드립니다.

+0

페이지를 새로 고침하면 DOM의 상태를 재설정 할 것을 기억 - 이러한 등 webstorage 또는 데이터베이스로

이에서보세요. 따라서 완료 후 정보를 새로 고치고 검색하기 전에 정보를 클라이언트 측 또는 서버 측에 저장해야합니다. localStorage 옵션을보고 싶을 수도 있습니다. – DinoMyte

+0

단일 페이지 요청을 초과하여 살아갈 수 있도록 데이터를 유지해야합니다. 웹 저장소가 여기에 도움이 될 수 있습니다. –

답변

관련 문제