Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.11.2015, 11:02
Новичок на форуме
Отправить личное сообщение для Borkot Посмотреть профиль Найти все сообщения от Borkot
 
Регистрация: 25.11.2015
Сообщений: 3

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(); отрабатывает раньше.
Ответить с цитированием
  #2 (permalink)  
Старый 25.11.2015, 11:22
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Borkot,
почему newWin.close(); не в function Delay?
обьявление var newWin; вынести из функции OpenHtml
в строке 20 var убрать
Ответить с цитированием
  #3 (permalink)  
Старый 25.11.2015, 11:45
Новичок на форуме
Отправить личное сообщение для Borkot Посмотреть профиль Найти все сообщения от Borkot
 
Регистрация: 25.11.2015
Сообщений: 3

Объявил глобальным Объектом, но все равно не работает в обычном режиме, в отладчике все прекрасно, а без отладчика и 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>
Ответить с цитированием
  #4 (permalink)  
Старый 25.11.2015, 11:46
Новичок на форуме
Отправить личное сообщение для Borkot Посмотреть профиль Найти все сообщения от Borkot
 
Регистрация: 25.11.2015
Сообщений: 3

Увидел почему...Невнимательность
Нет почему то все таки в отладчике работает как бы нормально, а в обычном не очень.
Извеняйте... Но этот код как заноза, не выходит из головы...

Последний раз редактировалось Borkot, 25.11.2015 в 11:48.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Условие поиска отрабатывает позже получения данных? ligisayan jQuery 1 25.06.2015 13:52
Цикл не отрабатывает до конца diakon Общие вопросы Javascript 5 09.09.2013 15:18
Не отрабатывает fileuploader Ragnarek Events/DOM/Window 0 17.01.2013 09:24
Почему скрипт отрабатывает в IE только при первом входе на сайт? tygeddar Элементы интерфейса 3 20.09.2012 01:37
Не отрабатывает событие onmouseout при внедрении нового слоя ilshat Элементы интерфейса 3 28.07.2008 06:27