Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.05.2011, 18:23
Профессор
Отправить личное сообщение для Severtain Посмотреть профиль Найти все сообщения от Severtain
 
Регистрация: 25.04.2011
Сообщений: 280

Cоздание анимации на JS и Canvas
Не могу сделать анимацию.. вроде все правильно! Код полностью ниже:
подскажите почему не работает!?

<canvas id="area" width="500" height="300">
</canvas>
<script type="text/javascript">
window.onload = function main(){
var img = new Image();
var img2;
var i=0; var j=0;
var a= new Array ('TxtLv01-01.png','TxtLv01-02.png','TxtLv01-03.png');

function main2(){
img2 = document.getElementById("ci").getContext("2d");

for (j=0;j<=2;j++)
{setTimeout(function(){ if (i==2) i=0;img.src = a[i]; img2.drawImage(img, 150, 150, 300, 300);
i++;
},10);

if (j==2) j=0;
}
}

main2();
}


</script>
Ответить с цитированием
  #2 (permalink)  
Старый 14.05.2011, 18:26
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от Severtain
подскажите почему не работает!?
мы должны сами догадаться что вы делаете?
Ответить с цитированием
  #3 (permalink)  
Старый 14.05.2011, 18:30
Профессор
Отправить личное сообщение для Severtain Посмотреть профиль Найти все сообщения от Severtain
 
Регистрация: 25.04.2011
Сообщений: 280

Кароче! Заношу одно изображение! а затем запускаю цикл с setTimeout в котором переставляю картинки ! Но дело в том, что если убрать цикл и счетчик, вручную он переставляет картинки.. а автоматизировать никак не могу! =(
Ответить с цитированием
  #4 (permalink)  
Старый 14.05.2011, 18:49
Профессор
Отправить личное сообщение для Severtain Посмотреть профиль Найти все сообщения от Severtain
 
Регистрация: 25.04.2011
Сообщений: 280

все разобрался сам
Ответить с цитированием
  #5 (permalink)  
Старый 14.05.2011, 20:31
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

как вариант:
<script type="text/javascript">
(function(i) {
      window.setInterval(
          function() {
              var element = document.getElementById('img');
                  images = ['http://png-2.findicons.com/files/icons/1982/social_me/48/google.png',
                            'http://png-5.findicons.com/files/icons/1982/social_me/48/twitter.png',
                            'http://png-4.findicons.com/files/icons/1982/social_me/48/facebook.png'],
              j = images.length;
              ++i < j ? element.src = images[i] : i = -1;
    }, 1500);
}(-1));
</script>

<img src="http://png-4.findicons.com/files/icons/1982/social_me/48/facebook.png" alt="" id="img" />
Ответить с цитированием
  #6 (permalink)  
Старый 14.05.2011, 20:40
Профессор
Отправить личное сообщение для Severtain Посмотреть профиль Найти все сообщения от Severtain
 
Регистрация: 25.04.2011
Сообщений: 280

Анимацию получилось сделать! только вот теперь другая проблема!
Если делать через канвас то на одном изображении картинки меняються с одинаковым интервалом.. происходит разрыв кадров и естественное переодическое исчезновение)) XD
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не получается передать переменную из JS в PHP Lion_astana AJAX и COMET 2 23.11.2010 17:23
Добавить на canvas еще один елемент greengarlic Общие вопросы Javascript 5 22.09.2010 10:16
помогите задать переменную в js bsgroupua Общие вопросы Javascript 3 01.02.2010 18:28
Самая лучшая книга по JS? ulandj Оффтопик 2 06.04.2009 11:35
Загрузка дополнительного js кода с сервера Anonymous2008 Общие вопросы Javascript 5 20.11.2008 12:33