2014-01-19 3 views
2

레일에서 10 초 안에 브라우저 창을 닫아야합니다. callback.html.erb라는 레일 뷰 파일에서이 코드를 시도했습니다. 여기 내 코드가있다.n 초 후 브라우저 창 닫기

<center> 
<p> 
    Your profile has been processed. This browser window will close in 10 seconds 
</p> 
</center> 
<script type="text/javascript"> 
function closeWindow() 
{ 
    setTimeout 
    (
     function() 
     { 
      window.close(); 
     },10000 
    ); 
} 
window.onload = closeWindow(); 
</script> 

실제로 작동하지 않는 것 같습니다. 내가 뭘 잘못 생각했는지 알아? 사전에

감사합니다!

답변

2

이 대답을 참조하십시오. 기본적으로 창을 열지 않았다면 창을 닫을 수 없습니다. Close windows that were not opened by script using javascript

+0

오 이것을보십시오. 그것은 파머입니다. 이 구현할 수있는 다른 방법이 있습니까? –

+0

'''window.open()'''을 사용하여 윈도우를 열 수 없다면 할 수 없습니다. 이는 보안 제한 사항입니다. – vooD

+0

시간 내 주셔서 감사합니다! –

0

그것은해야한다 :

window.onload = closeWindow; 

끝에 ()을 놓음으로써 즉시 closeWindow를 호출,하지만 당신은이 기능에 대한 참조를 제공하고자합니다.

0

횟수 countdown-

<p style="text-align:center">Please select a seller to process the report.<br/> 
This window will close automatically within <span id="counter">10</span> second(s).</p> 

     <script type="text/javascript"> 

      function countdown() { 
      var i = document.getElementById('counter'); 
      i.innerHTML = parseInt(i.innerHTML)-1; 
      if (parseInt(i.innerHTML)<=0) { 
       window.close(); 
      } 
     } 
     setInterval(function(){ countdown(); },1000); 
     </script>