Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Таймер в цикле не работает! 
:(
    Опции темы
Кирюха
Дата 12.8.2009, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 12
Регистрация: 8.5.2008
Где: г.Пенза

Репутация: нет
Всего: нет



Код

as=2;
        for (var i=0;i<4;i++)
        {            
        setTimeout('q.style.opacity = "."+as;',1000);
        as++;        
        }



почему не работает???
По идее должны получаться промежутоные значения, а есть только начальное и конечное!
Я имею ввиду слой начинает затемнение с первого значения т.е. это 2 и сразу заканчиват последним значением т.е. это 6!
Почему так???
PM MAIL ICQ   Вверх
bars80080
Дата 12.8.2009, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 15
Всего: 315



а что вы собственно хотите? все эти 4 итерации выполняются в пределах нескольких миличекунд, вы при желании ничего не заметите


PM MAIL WWW   Вверх
Itsys
Дата 12.8.2009, 13:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34



Смотрите про замыкания, например тут
PM MAIL WWW Skype   Вверх
diadiavova
Дата 12.8.2009, 16:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 11
Всего: 142



Кирюха, попробуй что-то в роде этого
Код

<html>
<head>
    <title>блаблабла</title>

    <script type="text/javascript">
        function changeOpacity(val)
        {
            var q = document.getElementById("div1");
            q.style.opacity = val / 10;
            val += .1;
            setTimeout("if(" + (val < 10).toString() + ")changeOpacity(" + val + ");", 100)
        }
        function button1_onclick()
        {
            changeOpacity(0);
        }

    </script>

</head>
<body>
    <div id="div1" style="background-color: Green; width: 300px; height: 300px;">
    </div>
    <input id="button1" type="button" value="run" onclick="return button1_onclick()" />
</body>
</html>



Для браузеров, поддерживающих opacity ессно smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
skyboy
Дата 13.8.2009, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 10
Всего: 260



Цитата(Кирюха @  12.8.2009,  12:35 Найти цитируемый пост)
По идее должны получаться промежутоные значения, а есть только начальное и конечное!

все таймеры будут запущены практически в одно время(как уже отметили, итерации отработают в течение милисекунд) и связанные действия тоже будут выполнены практически в одно время.
если хочешь последовательности - устанавливай разную задержку.
а лучше запусти один setInterval, который будет с каждой итерацией менять прозрачность на фиксированный шаг, а при достижении полной (не)прозрачности, самоудалится(clearInterval)
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0506 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.