движение картинок по кругу
добрый день, уважаемые!
я начал учить js и наткнулся на проблемму как создать скрипт в котором бы РАЗНЫЕ картинки перемещались бы по кругу причем количество картинок можно менять...я так понимаю это както с подсчетом угла меджу ними или вроде того заранее спасибо! |
круг = 360 градусов
360 / количество картинок |
и как их двигать?
|
прибавлять/отнимать по эн градусов
|
я новичек, я даже приблизительно не знаю как из двигать...
|
покажи что не получается - поможем
а то похоже что просишь готовое решение |
<html> <head> <style> .spanstyle { position:absolute; visibility:visible; } </style> <script language="JavaScript"> <!-- var xpos=new Array()//Массив x-координаты слоев var ypos=new Array()//Массив y-координаты слоев var f=0//Угол поворота var a=0//переменная остановки var rx=100//x-координата центра var ry=100//y-координата центра var r2=100//Радиус второй окружности движения звёздочек for (i=0; i<9; i++) { xpos[i]=rx ypos[i]=ry } //функция прорисовки function make() { //Меняем флаг по условию: //---- //Располагаем звёздочки по окружности c=1.35 //---- //Располагаем второй ряд звёздочек по окружности //и поворачиваем их относительно центра if (a==0){ f=f+0.01 f1=Math.cos(f) f2=Math.sin(f) xpos[1]=(rx-r2)*f1-ry*f2-rx*f1+ry*f2+rx ypos[1]=(rx-r2)*f2+ry*f1-rx*f2-ry*f1+ry xpos[2]=(rx-r2/c)*f1-(ry-r2/c)*f2-rx*f1+ry*f2+rx ypos[2]=(rx-r2/c)*f2+(ry-r2/c)*f1-rx*f2-ry*f1+ry xpos[3]=rx*f1-(ry-r2)*f2-rx*f1+ry*f2+rx ypos[3]=rx*f2+(ry-r2)*f1-rx*f2-ry*f1+ry xpos[4]=(rx+r2/c)*f1-(ry-r2/c)*f2-rx*f1+ry*f2+rx ypos[4]=(rx+r2/c)*f2+(ry-r2/c)*f1-rx*f2-ry*f1+ry xpos[5]=(rx+r2)*f1-ry*f2-rx*f1+ry*f2+rx ypos[5]=(rx+r2)*f2+ry*f1-rx*f2-ry*f1+ry xpos[6]=(rx+r2/c)*f1-(ry+r2/c)*f2-rx*f1+ry*f2+rx ypos[6]=(rx+r2/c)*f2+(ry+r2/c)*f1-rx*f2-ry*f1+ry xpos[7]=rx*f1-(ry+r2)*f2-rx*f1+ry*f2+rx ypos[7]=rx*f2+(ry+r2)*f1-rx*f2-ry*f1+ry xpos[8]=(rx-r2/c)*f1-(ry+r2/c)*f2-rx*f1+ry*f2+rx ypos[8]=(rx-r2/c)*f2+(ry+r2/c)*f1-rx*f2-ry*f1+ry //---- //Изменяем положение каждого слоя for (i=0; i<9; i++) { var thisspan = eval("span"+(i)+".style") thisspan.posLeft=xpos[i] thisspan.posTop=ypos[i] } //---- //Устанавливаем таймер вызова данной функции setTimeout("make()",10) } } //---- //Рисуем слои с идентификаторами от span0 до span9 for (i=0;i<9;i++) { document.write("<span id='span"+i+"' class='spanstyle'>") document.write('<img src="images/1.gif">') document.write("</span>") } //--> </script> </head> <body bgColor="#ffffff" onLoad="make()" > </body> </html> вот скомуниздил код чужой немогу сделать чтоб картинки разные были, ХХЕЕЕЛП! |
чтобы картинки разные были надо изменить 79 сточку на
document.write('<img src="images/'+i+'.gif">') картинки будут images/1.gif, images/2.gif ... images/9.gif |
Цитата:
|
Цитата:
спасибо, реально помог, я эту ошибку искал неделю)) подскажи пожалуйста еще такую вещь если я буду через админку добавлять рисунки мне придется дописывать формулы...каким образом лучше избежать этого? или по какой формуле определить положение картинки по кругу через угол, например картинок 10 угол = 36 градусов? |
Часовой пояс GMT +3, время: 16:52. |