Показать сообщение отдельно
  #13 (permalink)  
Старый 18.08.2012, 11:42
Интересующийся
Отправить личное сообщение для Andrey_rtv Посмотреть профиль Найти все сообщения от Andrey_rtv
 
Регистрация: 17.08.2012
Сообщений: 14

Действительно с интервалом вышла заминка, т.к. интервал в том виде, в котором он есть, будет рекурсивно создавать объект интервала и тем самым будет много объектов интервала, что, вообщем, весьма неправильно.

Переписал:
function Start_animation() {
	 
	  var change = false;
	  var index_img = 0;	  
	  var class_this = this;
	  
	  this.images = function() { return new Array ('header', 'header_2', 'header_3'); }   
	  
	  this.animate = function() {		 

		   change = (change) ? (false) : (true);
		   
		   $('#header .header_img img').each(function (index, el) {   				
				 
			     if ($(el).closest('.header_img').css('opacity') == 0) $(el).attr('src', '/skin/img/BG/' + get_next() + '.png');

			   });
		  		 
		   $('#header #first_h').animate({opacity: (change) ? (0) : (1)}, 1500);
		   $('#header #second_h').animate({opacity: (change) ? (1) : (0)}, 1500);
		   	   
		   
		  } 
		  
		  
	   var get_next = function() {
		   
		   index_img++;
		   
		   index_img = ((index_img + 1) <= class_this.images().length) ? (index_img) : (0);
		   
		   return class_this.images()[index_img]; 
		   
	   }
		  
	  
  }
  
  var Top_animation = new Start_animation();
  
  setInterval(Top_animation.animate, 5000);

Везде все норм. IE каждые 5 сек (+ видимо задержка 1.5 сек на анимацию) меняет картинку (src), но анимации замены (animate opacity) не происходит. Попробую перевести картинки из png в jpg, возможно дело в этом.

Последний раз редактировалось Andrey_rtv, 18.08.2012 в 11:54.
Ответить с цитированием