Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Задержка выполнения


Автор: CyClon 3.12.2005, 22:29
В общем, нужно сделать задержку в 2 секунда перед выполнение JS-скрипта.

Код

<script Language="JavaScript">
<!--
window.location.href = "/"
-->
</SCRIPT>


Код

javascript:history.go(-1)

Автор: Ciber SLasH 4.12.2005, 02:05
window.setTimeout(myFunc, 2000)

Автор: GIK 4.12.2005, 13:28
А еще лучще
timeSet=window.setInterval("myFunc",2000)
и в функции поставить timeSet.clearInterval() для остановки цикла(если конечно не нужно вызывать функцию myFunc ВСЕГДА), и если функцию нужно вызвать несколько раз, то можно использовать инкрементирующие переменные и условие.
Например если мы хотим вызвать функцию 3 раза
Код

<html>
 <head>
  <script type="text/javascript">
  <!--  
var i=0;
TimeSet=window.setInterval(myFunc,2000);
function myFunc()
{ i++; //Увеличиваем на один наш "счетчик"
  if(i>3)  //Вызываем три, раза не более
{
alert("Все TimeSet более не работает, до следующей загрузки");
TimeSet.clearInterval();
}
  else alert(i);
 } 
  
   //-->
  </script>
 </head>
<body>
</body>
</html>

Автор: CaligoSpiritus 31.5.2007, 16:49
Попробовал setTimeout. Сначала показалось, что все ок. Потом обнаружил вот что:
Если писать 
Код
setTimeout('myFunc(arg)', someTime)
, то аргумент arg на самом деле не передается...
Если писать 
Код
setTimeout(myFunc(arg), someTime)
, то аргумент arg передается, но что бы я не писал в someTime, функция myFunc(arg) срабатывает без всякой задержки...

Помогите решить проблему, плз...

Автор: Zeroglif 31.5.2007, 17:06
Код

setTimeout(function(){myFunc(arg)}, someTime);

Автор: Pena 14.6.2007, 13:47
Спасибо)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)