Показать сообщение отдельно
  #5 (permalink)  
Старый 01.11.2013, 23:11
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

Зачем setTimeout и что такое "эта же функция"?
Странная какая-то логика в коде. Сделайте функцию и вызывайте ее после загрузки предыдущего изображения с новым адресом картинки.

<div id="pole"></div>
 <script>
 var pole = document.getElementById('pole');
 var imgSrcs = [false, 'http://picsfab.com/download/image/80616/5000x3500_art-kosmos-3d.jpg','http://picsfab.com/download/image/76314/5000x3200_art-kosmos-3d.jpg','http://picsfab.com/download/image/79812/7248x3819_art-kosmos-3d.jpg','http://www.fotokanal.com/images/72/earth-in-space.jpg','http://baadu.ru/ph/43/kosmos_planeta_bezdna_stanciya_shatl_mks_atmosfera_6048x4032.jpg','http://i.artfile.ru/4960x3544_662497_[www.ArtFile.ru].jpg','http://kidsmi.ru/wp-content/uploads/2013/04/DSC00870.jpg','http://catherineryanhoward.files.wordpress.com/2013/09/dscn0074.jpg'];
(function imgCreator() {
	if(!imgSrcs[1]) return;
	img = document.createElement('img');
	img.style.height = '60px';
	img.style.width = '80px';
	img.style.position = 'absolute';
	img.style.top = '10px';
	img.style.left = '20px';
	if (imgSrcs[0]) img.style.left = '100px'; // для четных изображений делаем отступ 20px + 80px
	imgSrcs[0] = !imgSrcs[0];
	img.src = imgSrcs[1];
	img.onload = function() {
		if (pole.children.length > 2) {
			var toRemove = pole.children[0];
			toRemove.parentNode.removeChild(toRemove);
		}
        imgSrcs.splice(1,1);
		imgCreator();
	}
	pole.appendChild(img);
})();
</script>

Последний раз редактировалось BETEPAH, 02.11.2013 в 00:38.
Ответить с цитированием