Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.07.2011, 10:34   #1
X@OC
Форумчанин
 
Аватар для X@OC
 
Регистрация: 18.06.2010
Сообщений: 273
Стрелка Хвост для кометы

Доброго времени суток

написал скрип типа дождя или снегопад кому как
хочу для каждой летящей букве добавить свой хвост

например:
Цитата:
есть скорости полета каждой буквы: 2-7
и от скорость зависит размер хвоста: 5-10

общий вид себе представлял такой
скорость 7 размер хвоста 10
|----| - основной, прозрачность 0
|--| - 1 блок, прозрачность 10%, раз. изобр. уменьшен на 2 px
|| - 2 блок, прозрачность 20%, раз. изобр. уменьшен на 2 px
и т.д.

как это осуществить не знаю подскажите пожалуйста
JavaScript изучаю недавно
вот сам скрип
Код:
<!--

var s=20;
var w=1000,h=0;
pos = new Array(s);
Data = new Array(s);

for(var i=0; i<s; i++)
{
if(i%2==0)
Data[i] = '<img id="imgball'+i+'" src="./img/2.gif" width=15 style="position: absolute; top: '+Ran(-10, -100)+'px; left:'+Ran(10, w)+' px;">';
else if(i%2==0)
Data[i] = '<img id="imgball'+i+'" src="./img/3.gif" width=15 style="position: absolute; top: '+Ran(-10, -100)+'px; left:'+Ran(10, w)+' px;">';
else 
Data[i] = '<img id="imgball'+i+'" src="./img/1.gif" width=15 style="position: absolute; top: '+Ran(-10, -100)+'px; left:'+Ran(10, w)+' px;">';
}
for(var i=0; i<s; i++)
pos[i]=Ran(2,7);

for(var i=0; i<s; i++)
document.write(Data[i]);

window.onload = initAni;

function initAni()
{
timer = window.setInterval("animation()", 2);  
}


function getClientWidth()
{
  return document.compatMode=='CSS3Compat' && !window.opera?document.documentElement.clientWidth:document.body.clientWidth;
}

function getClientHeight()
{
  return document.compatMode=='CSS3Compat' && !window.opera?document.documentElement.clientHeight:document.body.clientHeight;
}


function Ran (m,n)
{
  m = parseInt(m);
  n = parseInt(n);
  return Math.floor( Math.random() * (n - m + 1) ) + m;
}


function animation() {
   w=getClientWidth();
   h=getClientHeight();
   for(var i=0; i<s; i++)
	{
         var t = parseInt(document.getElementById("imgball"+i).style.top);    
           if (t < h-30) {document.getElementById("imgball"+i).style.top = t+pos[i]+"px";
            } else
           { 	document.getElementById("imgball"+i).style.left = Ran(0, w-13)+"px";
        	document.getElementById("imgball"+i).style.top = -Ran(10,100);
                 pos[i]=Ran(2,7);   
           }
        }

      }
//-->
X@OC вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
очередь с указателем на хвост и голову Anny_Apple Паскаль, Turbo Pascal, PascalABC.NET 0 02.05.2011 21:04
Хорошая программа для разрезания жестких дисков для 7-ой винды и других ОС. Pumik2010 Windows 3 01.03.2011 01:28
Пеpенести в хвост одномеpного массива пеpвый отpицательный элемент. Irisk Помощь студентам 17 27.12.2010 17:35
Включить двойную буферизацию для формы в VBA для MsAccess 2003 dplz Microsoft Office Access 0 16.05.2010 17:00
Насколько можетбыть коротким код для решения задчки для Экселя? saga Microsoft Office Excel 0 04.04.2009 13:35