2014-11-16 4 views
0

사용자가 3 시간 후에 내 사이트와 다음 팝업을 방문하면 팝업 메시지를 표시하려고합니다.
첫 번째 방문을 표시하는 팝업 메시지를 구현 했으므로 반쯤 완료되었습니다.
3 시간 동안 지연시킨 후에 어떻게 팝업을 표시 할 수 있습니까?지연 후 팝업 메시지를 표시하는 방법

감사합니다.

+0

공유. jquery setInterval을 사용하면 아마도 필요한 것일 것입니다. – Billy

+0

@Billy가 말했듯이, 지금까지 우리가 한 일을 보여주십시오. –

+1

@ 빌리 일종의 나는 동의하지 않는다. setInterval은 jQuery 함수가 아니므로이 시간 동안 사용자가 페이지간에 이동할 가능성이 높기 때문에이 인스턴스에서이 매개 변수를 단독으로 사용할 수는 없습니다. 쿠키 나 로컬 저장소가 필요합니다. –

답변

1

당신은 당신이 수행하여 로컬 스토리지를 사용할 수있는 자바 스크립트를 사용하는 경우

다른 사람이 이미 제안으로
$(document).ready(function() { 
    var visited = localStorage['visited']; 
    if (!visited) { 
     localStorage['visited'] = Math.round(+new Date()/1000) 
     //Run initial pop up code 
    } 


    window.setInterval(function(){ 
     visited = localStorage['visited']; 
     if(visited != "finished") { 
      if (visited + (3600*3) < Math.round(+new Date()/1000)) { 
       //Run popup code for after 3 hours 
       localStorage['visited'] = "finished"; 
      } 
     } 
    }, 60000); 


}); 
0

는, setInterval을 당신이 찾고있는 아마. 예를 들어 jsFiddle을보십시오 : http://jsfiddle.net/dswknovp/ 행운을 빈다!

HTML :

<span id="alertText"></span> 

JS : 코드의 일부는, 그것은 사람들이 귀하의 질문에 대답 도움이 될 것입니다

var myTimer = 1000*3; // every 3 seconds for testing, use: 1000*60*60*3; //for 3 hours 

var myStart = setInterval(function(){ 
    myAlarm() 
}, myTimer); 

function myAlarm() { 
    document.getElementById("alertText").innerHTML += "-Time elapsed-"; 
    //you can change this to, for example: alert("Time is up"); 
} 
관련 문제