2014-01-19 3 views
2

Мне нужно закрыть окно браузера через 10 секунд на рельсах. Я пробовал этот код в файле вида rails, называемом callback.html.erb. Вот мой код.закрыть окно браузера через n секунд rails

<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

Oh. Это облом. Есть ли другой способ реализовать это? –

+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> 
Смежные вопросы