newWin.close(); Отрабатывает раньше
Доброе время суток!
Пишу код, смысл такой, чтобы открывалась новая вкладка, отображалась около 3,5 сек,и закрывалась с помощью newWin.close(); но перед этим должен выполнится var Tm2=setTimeout("OpenHtml()",3500); Вот код:
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript">
function START()
{
var i = 1;
var HtmlStr='НАша Строка';
while (i<10) {
var Tm2=setTimeout("OpenHtml()",3500);
i++;
}
return;
}
function OpenHtml()
{
var TempNumb=getRandomInt();
var newWin = window.open("http://javascript.ru","Newtab");
var Tm3=setTimeout(Delay,3500);
newWin.blur();
newWin.close();
return;
}
function getRandomInt()
{
return Math.floor(Math.random() * (500000 - 30000 + 1)) + 30000
}
function Delay()
{
return
}
</script>
</head>
<body>
<input type="button" onclick="START()" value="Старт!"/>
</body>
</html>
Но newWin.close(); отрабатывает раньше. |
Borkot,
почему newWin.close(); не в function Delay? обьявление var newWin; вынести из функции OpenHtml в строке 20 var убрать |
Объявил глобальным Объектом, но все равно не работает в обычном режиме, в отладчике все прекрасно, а без отладчика и 1сек не проходит как дочернее окно закрывается...
Сейчас код такой:
<html>
<head>
<meta charset="utf-8">
<script type="text/javascript">
var newWin;
function START()
{
var i = 1;
var HtmlStr='НАша Строка';
while (i<10) {
var Tm2=setTimeout("OpenHtml()",5000);
i++;
}
return;
}
function OpenHtml()
{
var TempNumb=getRandomInt();
newWin = window.open("http://javascript.ru","Newtab");
newWin.blur();
setTimeout(Delay(),3500);
return;
}
function getRandomInt()
{
return Math.floor(Math.random() * (500000 - 30000 + 1)) + 30000
}
function Delay()
{
newWin.close();
return
}
</script>
</head>
<body>
<input type="button" onclick="START()" value="Старт!"/>
</body>
</html>
|
Увидел почему...Невнимательность
Нет почему то все таки в отладчике работает как бы нормально, а в обычном не очень.
Извеняйте... Но этот код как заноза, не выходит из головы... |
| Часовой пояс GMT +3, время: 09:14. |