Javascript.RU

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

Асинхронное выполнение скриптов в HTML
Всем доброго времени суток...
HTML, кнопка, скрипт ; пользователь кликнул кнопку скрипт начинает выполняться (линейно/последовательно)
вопрос: Как добиться асинхронности, т.е. пока выполняется скрипт тот-же прогресс-бар отрисовывать?
Пытаюсь спросить google, но ничего внятного.
Можно ли выполнять асинхронно или в отдельном потоке ?
Ответить с цитированием
  #2 (permalink)  
Старый 15.08.2011, 11:25
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

setTimeout(function(){
  // Я не буду задерживать остальное выполнение скрипта
}, 1);
Ответить с цитированием
  #3 (permalink)  
Старый 15.08.2011, 12:30
Аспирант
Отправить личное сообщение для RUVATA Посмотреть профиль Найти все сообщения от RUVATA
 
Регистрация: 08.02.2011
Сообщений: 41

Спасибо... то что надо...
Ответить с цитированием
  #4 (permalink)  
Старый 15.08.2011, 13:05
Аспирант
Отправить личное сообщение для RUVATA Посмотреть профиль Найти все сообщения от RUVATA
 
Регистрация: 08.02.2011
Сообщений: 41

Ничего не выходит...
вот
setTimeout(second(8), 5000)
			first(1)
			
			
			function first(val){
				alert(val)
			};
			
			function second(val){
				for(var i = 1; i < 10; i++){
					val = val + val
				};
			 alert(val)
			};

И ничего асинхронно не запускается...
Ответить с цитированием
  #5 (permalink)  
Старый 15.08.2011, 13:19
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

setTimeout(function(){
  second(8);
}, 5000)
            first(1)
             
             
            function first(val){
                alert(val)
            };
             
            function second(val){
                for(var i = 1; i < 10; i++){
                    val = val + val
                };
             alert(val)
            };
Не нужно вызывать функцию внутри setTimeout, в нее нужно передавать ссылку на функцию, а не вызывать
setTimeout(second(), 5000); // не правильно
setTimeout(second, 5000); // правильно
Ответить с цитированием
  #6 (permalink)  
Старый 15.08.2011, 13:31
Аспирант
Отправить личное сообщение для RUVATA Посмотреть профиль Найти все сообщения от RUVATA
 
Регистрация: 08.02.2011
Сообщений: 41

а контекст при этом будет один и тот-же ?
Ответить с цитированием
  #7 (permalink)  
Старый 15.08.2011, 13:34
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от RUVATA
а контекст при этом будет один и тот-же ?
все от фантазии зависит
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание HTML страниц Sportlife89 (X)HTML/CSS 7 03.06.2011 15:04
Передача кода HTML Владимир Седов Общие вопросы Javascript 2 12.04.2011 16:48
Выполнение скриптов с другого домена seregarem Events/DOM/Window 12 25.09.2010 19:31
Динамические html элементы sky Элементы интерфейса 2 07.03.2010 11:58
Выполнение скриптов на динамически загруженных страницах stryaponoff AJAX и COMET 18 28.02.2010 08:10